collapseos/blk/569

14 lines
391 B
Plaintext

: (key)
0 ( gid ) 0 ( dummy )
BEGIN ( loop until a digit is pressed )
DROP
1+ DUP 7 = IF DROP 0 THEN ( inc gid )
1 OVER LSHIFT 0xff -^ ( group dmask ) _get
DUP 0xff = NOT UNTIL
( gid dmask )
0xff XOR ( dpos ) 0 ( dindex )
BEGIN 2DUP RSHIFT IF 1+ 1 ELSE 0 THEN UNTIL
( gid dpos dindex ) SWAP DROP
( gid dindex ) SWAP 8 * + _dtbl + C@
;