10 REM > Example03 20 :: 30 REM © 2000 Martin Penny 40 :: 50 ON ERROR GOTO 600 60 :: 70 MODE 12 80 OFF 90 COLOUR 0, 4 100 COLOUR 7, 3 110 DIM D% 4095 120 L% = D% + 4096 130 REPEAT 140 CLS 150 PRINT 160 ON 170 INPUT "Value: " V$ 180 OFF 190 PRINT 200 IF V$ = "" THEN 210 ON 220 END 230 ENDIF 240 V% = EVAL("&" + RIGHT$("00000000" + V$, 8)) 250 FOR T% = 0 TO 1 260 OPT% = 8 + T% * 3 270 IF OPT% AND 1 THEN PRINT 280 P% = D% 290 [OPT OPT% 300 : 310 .Code% 320 OPT FN_Mov32_(0, V%) 330 .Exit% 340 MOV R15, R14 350 : 360 .End% 370 : 380 ] 390 IF OPT% AND 1 THEN PRINT 400 NEXT T% 410 PRINT 420 PRINT "Result: "; RIGHT$("00000000" + STR$~(USR(Code%)), 8) 430 PRINT 440 PRINT 450 PRINT "-- Press ENTER to continue --" 460 REPEAT UNTIL GET = 13 470 UNTIL FALSE 480 :: 490 DEF FN_Mov32_(R%, V%) 500 [OPT OPT% 510 : 520 MOV R%, #(V% AND &000000FF) 530 ORR R%, R%, #(V% AND &0000FF00) 540 ORR R%, R%, #(V% AND &00FF0000) 550 ORR R%, R%, #(V% AND &FF000000) 560 : 570 ] 580 = OPT% 590 :: 600 PRINT REPORT$; " at line "; ERL 610 ON 620 END