17 lines
516 B
Plaintext
17 lines
516 B
Plaintext
CODE DUP AX POPx, AX PUSHx, AX PUSHx, ;CODE
|
|
CODE ?DUP AX POPx, AX AX ORxx, AX PUSHx,
|
|
IFNZ, AX PUSHx, THEN, ;CODE
|
|
CODE DROP AX POPx, ;CODE
|
|
CODE SWAP AX POPx, BX POPx, AX PUSHx, BX PUSHx, ;CODE
|
|
CODE OVER ( a b -- a b a )
|
|
DI SP MOVxx, AX [DI] 2 MOVx[]+, AX PUSHx, ;CODE
|
|
CODE PICK
|
|
DI POPx, DI SHLx1, ( x2 )
|
|
DI SP ADDxx, DI [DI] MOVx[], DI PUSHx,
|
|
;CODE
|
|
CODE (roll) ( "2 3 4 5 4 --> 2 4 5 5". See B311 )
|
|
CX POPx, SI SP MOVxx, SI CX ADDxx,
|
|
DI SI MOVxx, SI DECx, SI DECx,
|
|
STD, REPZ, MOVSB,
|
|
;CODE
|