2020-05-10 10:54:47 +10:00
|
|
|
: _gti ( -- tindex, that it, index in _dtbl or _atbl )
|
2020-05-10 01:55:58 +10:00
|
|
|
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
|
2020-05-11 01:26:58 +10:00
|
|
|
DUP 0xff = NOT UNTIL _wait
|
2020-05-10 01:55:58 +10:00
|
|
|
( gid dmask )
|
|
|
|
0xff XOR ( dpos ) 0 ( dindex )
|
2020-05-10 04:28:55 +10:00
|
|
|
BEGIN 1+ 2DUP RSHIFT NOT UNTIL 1-
|
2020-05-23 04:03:12 +10:00
|
|
|
( gid dpos dindex ) NIP
|
2020-05-10 10:54:47 +10:00
|
|
|
( gid dindex ) SWAP 8 * + ;
|
2020-06-12 08:12:01 +10:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|