Home » Personal collection » Acorn hard disk » files » DomFord » OldMand/3.10.96

OldMand/3.10.96

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn hard disk » files » DomFord
Filename: OldMand/3.10.96
Read OK:
File size: 5377 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM Mandelbrot Set Plotter
   20REM By Dominic Ford
   30:
   40ON ERROR PROCerror:END
   50:
   60PROCassemble
   70CALL start
   80END
   90:
  100DEFPROCerror
  110ON ERROR OFF
  120REPORT:PRINT" at line ";ERL
  130FORR=0TO5000:NEXT
  140ENDPROC
  150:
  160DEFPROCassemble
  170DIM space &30000
  180:
  190FOR p=0 TO 2 STEP 2
  200P%=space
  210[OPT p
  220:
  230\ TASK START-UP
  240.start          BL setup
  250                MOV R0,#3
  260                MOV R1,#&28000
  270                SWI "OS_ChangeDynamicArea"
  280                ADR R0,sload
  290                SWI "OS_CLI"
  300                ADR R0,startspr
  310                SWI "OS_CLI"
  320                SWI 256+22
  330                SWI 256+15
  340                MOV R0,#&ED
  350                MOV R1,#&80
  360                MOV R2,#&100
  370                SWI "OS_Plot"
  380.startsploop    SWI "OS_Mouse"
  390                CMP R2,#0
  400                BEQ startsploop
  410                MOV R0,#200
  420                ADR R1,taskno
  430                LDR R1,[R1]
  440                ADR R2,taskname
  450                SWI "Wimp_Initialise"
  460                MOV R0,#0
  470                ADR R1,sprinfo
  480                SWI "Wimp_CreateIcon"
  490                ADR R1,sprnum
  500                STR R0,[R1]
  510                MOV R0,#0
  520                SUB R0,R0,#1
  530                MOV R1,#0
  540                MOV R2,#0
  550                MOV R3,#1280
  560                MOV R4,#1024
  570                SWI "Wimp_ForceRedraw"
  580.mainloop       MOV R0,#0
  590                ADR R1,qbuffer
  600                SWI "Wimp_Poll"
  610                CMP R0,#17
  620                BEQ quitcheck
  630                CMP R0,#18
  640                BEQ quitcheck
  650.notquitted     CMP R0,#6
  660                BNE notactive
  670                ADR R1,qbuffer
  680                MOV R2,#12
  690                LDR R3,[R1,R2]
  700                ADD R3,R3,#2
  710                CMP R3,#0
  720                BNE notactive
  730                MOV R2,#&10
  740                LDR R3,[R1,R2]
  750                ADR R4,sprnum
  760                LDR R4,[R4]
  770                CMP R3,R4
  780                BNE notactive
  790.mousewait      SWI "OS_Mouse"
  800                CMP R2,#0
  810                BNE mousewait
  820                MOV R0,#0
  830                ADR R1,wimpstat
  840                STR R0,[R1]
  850                ADR R0,prev
  860                LDR R0,[R0]
  870                CMP R0,#0
  880                BEQ first
  890                BL restart
  900                B activec
  910.first          BL startup
  920.activec        BL mandelplot
  930                BL savescr
  940                MOV R0,#0
  950                SUB R0,R0,#1
  960                MOV R1,#0
  970                MOV R2,#0
  980                MOV R3,#1280
  990                MOV R4,#1024
 1000                SWI "Wimp_ForceRedraw"
 1010.notactive      ADR R0,prev
 1020                LDR R0,[R0]
 1030                CMP R0,#1
 1040                BNE noextraplot
 1050                ADR R0,plotstat
 1060                LDR R0,[R0]
 1070                CMP R0,#1
 1080                BNE noextraplot
 1090                MOV R0,#1
 1100                ADR R1,wimpstat
 1110                STR R0,[R1]
 1120                BL contplot
 1130                ADR R1,plotstat
 1140                STR R0,[R1]
 1150.noextraplot    B mainloop
 1160.quitcheck      ADR R1,qbuffer
 1170                MOV R2,#&10
 1180                LDR R2,[R1,R2]
 1190                CMP R2,#0
 1200                BNE notquitted
 1210                SWI "OS_Exit"
 1220.sload          EQUS "SLOAD <Obey$Dir>.!Sprites":EQUD 0
 1230                ALIGN
 1240.taskname       EQUS "MandelPlot":EQUD 0
 1250                ALIGN
 1260.taskno         EQUD &4B534154
 1270                ALIGN
 1280.sprinfo        EQUD &FFFFFFFF:EQUD 0:EQUD 0:EQUD &64:EQUD &44
 1290                EQUD &1100302A:EQUD &6E616D21:EQUD &6C6564:EQUD &D
 1300                ALIGN
 1310.sprnum         EQUD 0
 1320                ALIGN
 1330.qbuffer        EQUS"                                             "
 1340                ALIGN
 1350.wimpstat       EQUD 0
 1360                ALIGN
 1370.startspr       EQUS "SCHOOSE startup":EQUD 0
 1380                ALIGN
 1390:
 1400\ MANDELBROT SET CALCULATION
 1410\ R1=x |R2=y
 1420:
 1430\ F0=xpos
 1440\ F1=ypos
 1450\ F2=u
 1460\ F3=v
 1470:
 1480.mandpix         STMFD R13!,{R14}
 1490                 MOV R11,#0
 1500                 ADR R0,xmin                    \ Get X co-ordinate
 1510EQUD &ECF00100 \ LDFE F0,[R0]
 1520                 ADR R0,xstep
 1530EQUD &ECF01100 \ LDFE F1,[R0]
 1540EQUD &EE0711D7 \ FLTE F7,R1
 1550EQUD &EE192107 \ MLFE F2,F1,F7
 1560EQUD &EE080102 \ ADFE F0,F0,F2
 1570:
 1580                 ADR R0,ymin                    \ Get Y co-ordinate
 1590EQUD &ECF01100 \ LDFE F1,[R0]
 1600                 ADR R0,ystep
 1610EQUD &ECF02100 \ LDFE F2,[R0]
 1620EQUD &EE0721D7 \ FLTE F7,R2
 1630EQUD &EE1A3107 \ MLFE F3,F2,F7
 1640EQUD &EE091103 \ ADFE F1,F1,F3
 1650:
 1660EQUD &EE08A100 \ MVFE F2,F0
 1670EQUD &EE08B101\  MVFE F3,F1
 1680.pixloop
 1690EQUD &EE1A4102 \ MLFE F4,F2,F2        \ Finished?
 1700EQUD &EE1B5103 \ MLFE F5,F3,F3
 1710EQUD &EE0C6105 \ ADFE F6,F4,F5
 1720EQUD &EED6F11C \ CMFE F6,#4           \ u^2+v^2>4 ?
 1730                 BCS found
 1740                 ADD R11,R11,#1
 1750                 ADR R3,maxit
 1760                 LDR R10,[R3]
 1770                 CMP R11,R10
 1780                 BEQ found
 1790EQUD &EE2C6105 \ SBFE F6,F4,F5                \ u=u^2-v^2+x
 1800EQUD &EE0E6100 \ ADFE F6,F6,F0
 1810EQUD &EE1A4103 \ MLFE F4,F2,F3                \ v=2uv+y
 1820EQUD &EE0C4104 \ ADFE F4,F4,F4
 1830EQUD &EE0C4101 \ ADFE F4,F4,F1
 1840EQUD &EE08A106 \ MVFE F2,F6
 1850EQUD &EE08B104 \ MVFE F3,F4
 1860                 B pixloop
 1870:
 1880.found
 1890MOV R0,R11
 1900LDMFD R13!,{PC}
 1910:
 1920.setup
 1930EQUD &EE088108 \ MVFE F0,#0
 1940EQUD &EE28010A \ SBFE F0,F0,#2
 1950                 ADR R0,xmin
 1960EQUD &ECE00100 \ STFE F0,[R0]
 1970                 ADR R0,ymin
 1980EQUD &ECE00100 \ STFE F0,[R0]
 1990EQUD &EE08910A \ MVFE F0,#2
 2000EQUD &EE49010C \ DVFE F0,F0,#4
 2010EQUD &EE48110C \ DVFE F0,F0,#4
 2020EQUD &EE49010C \ DVFE F0,F0,#4
 2030EQUD &EE48110C \ DVFE F0,F0,#4
 2040EQUD &EE49010A \ DVFE F0,F0,#2
 2050                 ADR R0,ystep
 2060EQUD &ECE00100 \ STFE F0,[R0]
 2070                 ADR R0,xstep
 2080EQUD &ECE00100 \ STFE F0,[R0]
 2090                 MOV PC,R14
 2100:
 2110.plotstat EQUD 0
 2120ALIGN
 2130.prev EQUD 0
 2140ALIGN
 2150:
 2160\ MAIN PLOT CONTROLLER
 2170:
 2180.plotter         STMFD R13!,{R14}
 2190                 MOV R9,#512
 2200                 ADR R2,step
 2210                 STR R9,[R2]
 2220.newstep         MOV R0,#0
 2230                 MOV R1,#0
 2240                 MOV R7,#0
 2250                 MOV R8,#0
 2260.pltloop         ADR R2,xstr
 2270                 STR R0,[R2]
 2280                 ADR R2,ystr
 2290                 STR R1,[R2]
 2300                 AND R2,R7,#1
 2310                 CMP R2,#0
 2320                 BNE plotpix
 2330                 AND R2,R8,#1
 2340                 CMP R2,#0
 2350                 BEQ plotted
 2360.plotpix         ADR R2,wimpstat
 2370                 LDR R3,[R2]
 2380                 CMP R3,#&100
 2390                 BEQ plotstop
 2400                 MOV R3,R3,ASL #1
 2410                 STR R3,[R2]
 2420                 MOV R2,R1
 2430                 MOV R1,R0
 2440                 BL mandpix
 2450                 BL point
 2460                 ADR R0,wimpstat
 2470                 LDR R0,[R0]
 2480                 CMP R0,#0
 2490                 BNE plotstop
 2500.plottedb        ADR R2,xstr
 2510                 LDR R0,[R2]
 2520                 ADR R2,ystr
 2530                 LDR R1,[R2]
 2540                 ADR R2,step
 2550                 LDR R9,[R2]
 2560                 ADD R0,R0,R9
 2570                 ADD R7,R7,#1
 2580                 CMP R0,#1024
 2590                 BNE pltloop
 2600                 MOV R0,#0
 2610                 MOV R7,#0
 2620                 CMP R9,#3
 2630                 BCS notfinal
 2640                 MOV R9,#4
 2650.notfinal        ADD R1,R1,R9
 2660                 ADD R8,R8,#1
 2670                 CMP R1,#1024
 2680                 BNE pltloop
 2690                 LDR R9,[R2]
 2700                 MOV R9,R9,LSR #1
 2710                 STR R9,[R2]
 2720                 CMP R9,#1
 2730                 BNE newstep
 2740                 MOV R0,#0
 2750                 LDMFD R13!,{PC}
 2760.plotted         ADR R0,wimpstat
 2770                 LDR R1,[R0]
 2780                 CMP R1,#1
 2790                 BEQ plottedb
 2800                 SWI "OS_Mouse"
 2810                 CMP R2,#0
 2820                 BEQ plottedb
 2830.plotstop        ADR R0,xpns
 2840                 STR R7,[R0]
 2850                 ADR R0,ypns
 2860                 STR R8,[R0]
 2870                 MOV R0,#1
 2880                 LDMFD R13!,{PC}
 2890:
 2900.contplot        STMFD R13!,{R14}
 2910                 ADR R0,xpns
 2920                 LDR R7,[R0]
 2930                 ADR R0,ypns
 2940                 LDR R8,[R0]
 2950                 B plottedb
 2960:
 2970\ SCREEN MEMORY HANDLING
 2980:
 2990.point           ADD R10,R0,#7
 3000                 AND R10,R10,#127
 3010                 ADR R2,xstr
 3020                 LDR R0,[R2]
 3030                 ADR R2,ystr
 3040                 LDR R1,[R2]
 3050                 MOV R11,#&280
 3060                 MOV R0,R0,LSR #1
 3070                 MOV R1,R1,LSR #2
 3080                 SUB R0,R11,R0
 3090                 ADR R11,wimpstat
 3100                 LDR R11,[R11]
 3110                 CMP R11,#0
 3120                 MOVEQ R11,#&2000000
 3130                 ADRNE R11,scread
 3140                 LDRNE R11,[R11]
 3150                 ADDNE R11,R11,#&28000
 3160                 SUB R11,R11,R0
 3170                 MOV R12,#&280
 3180                 MUL R2,R1,R12
 3190                 SUB R11,R11,R2
 3200                 ADR R0,step
 3210                 LDR R2,[R0]
 3220                 MOV R0,#0
 3230                 MOV R1,#0
 3240.squplop         LDRB R3,[R11,R0]
 3250                 AND R3,R3,#128
 3260                 ADD R3,R3,R10
 3270                 STRB R3,[R11,R0]
 3280                 ADD R0,R0,#1
 3290                 CMP R0,R2,LSR #1
 3300                 BCC squplop
 3310                 MOV R0,#0
 3320                 SUB R11,R11,#&280
 3330                 ADD R1,R1,#1
 3340                 CMP R1,R2,LSR #2
 3350                 BCC squplop
 3360                 MOV PC,R14
 3370:
 3380.mousebox        ADR R0,xboxa
 3390                 LDR R0,[R0]
 3400                 ADR R1,xboxb
 3410                 LDR R1,[R1]
 3420                 CMP R0,R1
 3430                 MOVCS R2,R0
 3440                 MOVCS R0,R1
 3450                 MOVCS R1,R2
 3460                 ADR R2,yboxa
 3470                 LDR R2,[R2]
 3480                 ADR R3,yboxb
 3490                 LDR R3,[R3]
 3500                 CMP R2,R3
 3510                 MOVCS R4,R2
 3520                 MOVCS R2,R3
 3530                 MOVCS R3,R4
 3540                 MOV R11,#&280
 3550                 MOV R4,R0,LSR #1
 3560                 MOV R5,R2,LSR #2
 3570                 SUB R4,R11,R4
 3580                 MOV R11,#&2000000
 3590                 SUB R11,R11,R4
 3600                 MOV R12,#&280
 3610                 MUL R6,R5,R12
 3620                 SUB R11,R11,R6
 3630                 MOV R4,#0
 3640                 MOV R5,R1
 3650                 SUB R5,R5,R0
 3660                 MOV R5,R5,LSR #1
 3670.xbotlop         LDRB R6,[R11,R4]
 3680                 EOR R6,R6,#128
 3690                 STRB R6,[R11,R4]
 3700                 ADD R4,R4,#1
 3710                 CMP R4,R5
 3720                 BCC xbotlop
 3730                 MOV R6,R3
 3740                 SUB R6,R6,R2
 3750                 MOV R6,R6,LSR #2
 3760                 MOV R4,#&280
 3770                 MUL R7,R6,R4
 3780                 MOV R6,R7
 3790                 MOV R4,#0
 3800.yleftlop        LDRB R7,[R11,-R4]
 3810                 EOR R7,R7,#128
 3820                 STRB R7,[R11,-R4]
 3830                 ADD R4,R4,#&280
 3840                 CMP R4,R6
 3850                 BCC yleftlop
 3860                 RSB R4,R5,#&280
 3870                 \SUB R6,R6,R5
 3880.yrightlop       LDRB R7,[R11,-R4]
 3890                 EOR R7,R7,#128
 3900                 STRB R7,[R11,-R4]
 3910                 ADD R4,R4,#&280
 3920                 CMP R4,R6
 3930                 BCC yrightlop
 3940                 \ADD R6,R6,R5
 3950                 SUB R11,R11,R6
 3960                 MOV R4,#0
 3970.xtoplop         LDRB R6,[R11,R4]
 3980                 EOR R6,R6,#128
 3990                 STRB R6,[R11,R4]
 4000                 ADD R4,R4,#1
 4010                 CMP R4,R5
 4020                 BCC xtoplop
 4030                 MOV PC,R14
 4040:
 4050.savescr         ADR R1,scrmem
 4060                 LDR R0,[R1]
 4070                 ADR R1,scread
 4080                 LDR R1,[R1]
 4090                 MOV R2,#0
 4100.savlop          LDR R3,[R0,R2]
 4110                 STR R3,[R1,R2]
 4120                 ADD R2,R2,#4
 4130                 CMP R2,#&28000
 4140                 BNE savlop
 4150                 MOV PC,R14
 4160.loadscr         ADR R0,scrmem
 4170                 LDR R1,[R0]
 4180                 ADR R0,scread
 4190                 LDR R0,[R0]
 4200                 MOV R2,#0
 4210                 B savlop
 4220:
 4230.xmin EQUD 0:EQUD0:EQUD0
 4240.ymin EQUD 0:EQUD0:EQUD0
 4250.xstep EQUD 0:EQUD0:EQUD0
 4260.ystep EQUD 0:EQUD0:EQUD0
 4270.scrmem EQUD &1FD8000
 4280.scread EQUD screen
 4290.maxit EQUD 25
 4300.xstr EQUD 0
 4310.ystr EQUD 0
 4320.xpns EQUD 0
 4330.ypns EQUD 0
 4340.step EQUD 0
 4350.xboxa EQUD 0
 4360.xboxb EQUD 0
 4370.yboxa EQUD 0
 4380.yboxb EQUD 0
 4390:
 4400.startup STMFD R13!,{R14}
 4410         SWI 256+22
 4420         SWI 256+15
 4430         MOV R0,#106
 4440         MOV R1,#1
 4450         SWI "OS_Byte"
 4460         SWI 256+23
 4470         SWI 256+1
 4480         SWI 256
 4490         SWI 256
 4500         SWI 256
 4510         SWI 256
 4520         SWI 256
 4530         SWI 256
 4540         SWI 256
 4550         SWI 256
 4560         ADR R0,schoose
 4570         SWI "OS_CLI"
 4580         MOV R0,#&ED
 4590         MOV R1,#1024
 4600         ADR R2,ploty
 4610         LDR R2,[R2]
 4620         SWI "OS_Plot"
 4630         SWI "OS_WriteS"
 4640         EQUB17:EQUB255:EQUB17:EQUB32
 4650         EQUB31:EQUB64:EQUB10:EQUS"Zoom In         "
 4660         EQUB31:EQUB64:EQUB12:EQUS"Reset           "
 4670         EQUB17:EQUB8
 4680         EQUB31:EQUB64:EQUB16:EQUS"Iterations      "
 4690         EQUB17:EQUB6
 4700         EQUB31:EQUB64:EQUB28:EQUS"Desktop         "
 4710         EQUB31:EQUB64:EQUB30:EQUS"Quit Program    "
 4720         EQUB17:EQUB128:EQUB0
 4730         ALIGN
 4740         BL plotter
 4750         ADR R1,plotad
 4760         LDR R1,[R1]
 4770         STR R0,[R1]
 4780         MOV R0,#1
 4790         ADR R1,prevad
 4800         LDR R1,[R1]
 4810         STR R0,[R1]
 4820         LDMFD R13!,{PC}
 4830.restart STMFD R13!,{R14}
 4840         SWI 256+22
 4850         SWI 256+15
 4860         MOV R0,#106
 4870         MOV R1,#1
 4880         SWI "OS_Byte"
 4890         SWI 256+23
 4900         SWI 256+1
 4910         SWI 256
 4920         SWI 256
 4930         SWI 256
 4940         SWI 256
 4950         SWI 256
 4960         SWI 256
 4970         SWI 256
 4980         SWI 256
 4990         BL loadscr
 5000         LDMFD R13!,{PC}
 5010.mandelplot
 5020         STMFD R13!,{R14}
 5030.mploop  ADR R0,plotad
 5040         LDR R0,[R0]
 5050         LDR R0,[R0]
 5060         CMP R0,#1
 5070         BNE noplot
 5080         BL contplot
 5090         ADR R1,plotad
 5100         LDR R1,[R1]
 5110         STR R0,[R1]
 5120.noplot  SWI "OS_Mouse"
 5130         CMP R2,#0
 5140         BEQ mploop
 5150         CMP R0,#1024
 5160         BCC boxout
 5170         B function
 5180.schoose EQUS "SCHOOSE logo":EQUD 0
 5190         ALIGN
 5200.ploty   EQUD 775
 5210         ALIGN
 5220:
 5230.boxout  BL mousebox
 5240         BL savescr
 5250         SWI"OS_Mouse"
 5260         ADR R2,xboxa
 5270         STR R0,[R2]
 5280         ADR R2,yboxa
 5290         STR R1,[R2]
 5300.boxoutl CMP R0,#1024
 5310         MOVCS R0,#1024
 5320         SUBCS R0,R0,#1
 5330         ADR R2,xboxb
 5340         STR R0,[R2]
 5350         ADR R2,yboxb
 5360         STR R1,[R2]
 5370         ADR R2,wimpad
 5380         LDR R2,[R2]
 5390         MOV R0,#1
 5400         STR R0,[R2]
 5410         BL mousebox
 5420         BL contplot
 5430         BL mousebox
 5440         SWI "OS_Mouse"
 5450         CMP R2,#0
 5460         BNE boxoutl
 5470         ADR R2,wimpad
 5480         LDR R2,[R2]
 5490         MOV R0,#0
 5500         STR R0,[R2]
 5510         BL loadscr
 5520         BL mousebox
 5530         B mploop
 5540.plotad  EQUD plotstat
 5550.wimpad  EQUD wimpstat
 5560.prevad  EQUD prev
 5570.function MOV R1,R1,LSR #5
 5580         CMP R1,#1
 5590         BEQ quittask
 5600         CMP R1,#3
 5610         BEQ desktop
 5620         CMP R1,#15
 5630         BEQ iterate
 5640         CMP R1,#19
 5650         BEQ resetpos
 5660         CMP R1,#21
 5670         BEQ zoomin
 5680         B mploop
 5690:
 5700\               QUIT FUNCTIONS
 5710:
 5720.desktop LDMFD R13!,{PC}
 5730.quittask BL savescr
 5740         SWI 256+31
 5750         SWI 256
 5760         SWI 256
 5770         SWI "OS_WriteS"
 5780         EQUB16:EQUB17:EQUB127:EQUS"Quit: Are You Sure?"
 5790         EQUB13:EQUB10:EQUB13:EQUB10
 5800         EQUS"Click LEFT to quit; RIGHT to cancel.":EQUB0
 5810         ALIGN
 5820.stopcl  SWI"OS_Mouse"
 5830         CMP R2,#0
 5840         BNE stopcl
 5850.quitlop SWI"OS_Mouse"
 5860         CMP R2,#4
 5870         BEQ quitokay
 5880         CMP R2,#1
 5890         BLEQ loadscr
 5900         BEQ mploop
 5910         B quitlop
 5920.quitokay LDMFD R13!,{R0}
 5930         MOV R0,#0
 5940         SUB R0,R0,#1
 5950         MOV R1,#0
 5960         MOV R2,#0
 5970         MOV R3,#1280
 5980         MOV R4,#1024
 5990         SWI "Wimp_ForceRedraw"
 6000         SWI "OS_Exit"
 6010:
 6020\        ZOOM FUNCTIONS
 6030:
 6040.resetpos        BL setup
 6050                 BL plotter
 6060                 B mploop
 6070:
 6080.zoomin          ADR R0,xminad
 6090                 LDR R0,[R0]
 6100                 ADR R1,xstepad
 6110                 LDR R1,[R1]
 6120                 ADR R2,yminad
 6130                 LDR R2,[R2]
 6140                 ADR R3,ystepad
 6150                 LDR R3,[R3]
 6160                 ADR R4,xboxat
 6170                 LDR R4,[R4]
 6180                 LDR R4,[R4]
 6190                 ADR R5,xboxbt
 6200                 LDR R5,[R5]
 6210                 LDR R5,[R5]
 6220                 CMP R4,R5
 6230                 MOVCS R6,R4
 6240                 MOVCS R4,R5
 6250                 MOVCS R5,R6
 6260                 ADR R6,yboxat
 6270                 LDR R6,[R6]
 6280                 LDR R6,[R6]
 6290                 ADR R7,yboxbt     \ R0=xmin
 6300                 LDR R7,[R7]       \ R1=xstep
 6310                 LDR R7,[R7]       \ R2=ymin
 6320                 CMP R6,R7         \ R3=ystep
 6330                 MOVCS R8,R6       \ R4=xboxa
 6340                 MOVCS R6,R7       \ R5=xboxb
 6350                 MOVCS R7,R8       \ R6=yboxa
 6360EQUD &ECF00100 \ LDFE F0,[R0]      \ R7=yboxb
 6370EQUD &ECF11100 \ LDFE F1,[R1]
 6380EQUD &EE0241D2 \ FLTE F2,R4
 6390EQUD &EE1A3101 \ MLFE F3,F2,F1
 6400EQUD &EE0B3100 \ ADFE F3,F3,F0
 6410EQUD &EE0451D4 \ FLTE F4,R5
 6420EQUD &EE1C5101 \ MLFE F5,F4,F1
 6430EQUD &EE0D5100 \ ADFE F5,F5,F0
 6440EQUD &EE2D5103 \ SBFE F5,F5,F3
 6450                 MOV R8,#1024
 6460EQUD &EE0681D6 \ FLTE F6,R8
 6470EQUD &EE4D7106 \ DVFE F7,F5,F6
 6480EQUD &ECE03100 \ STFE F3,[R0]
 6490EQUD &ECE17100 \ STFE F7,[R1]
 6500:
 6510EQUD &ECF20100 \ LDFE F0,[R2]
 6520EQUD &ECF31100 \ LDFE F1,[R3]
 6530EQUD &EE0261D2 \ FLTE F2,R6
 6540EQUD &EE1A3101 \ MLFE F3,F2,F1
 6550EQUD &EE0B3100 \ ADFE F3,F3,F0
 6560EQUD &EE0471D4 \ FLTE F4,R7
 6570EQUD &EE1C5101 \ MLFE F5,F4,F1
 6580EQUD &EE0D5100 \ ADFE F5,F5,F0
 6590EQUD &EE2D5103 \ SBFE F5,F5,F3
 6600EQUD &EE4D7106 \ DVFE F7,F5,F6
 6610EQUD &ECE23100 \ STFE F3,[R2]
 6620EQUD &ECE37100 \ STFE F7,[R3]
 6630                 BL plotter
 6640                 B mploop
 6650:
 6660.xminad          EQUD xmin
 6670.yminad          EQUD ymin
 6680.xstepad         EQUD xstep
 6690.ystepad         EQUD ystep
 6700.xboxat          EQUD xboxa
 6710.yboxat          EQUD yboxa
 6720.xboxbt          EQUD xboxb
 6730.yboxbt          EQUD yboxb
 6740:
 6750\ CHANGE MAXIMUM ITERATIONS
 6760.iterate         BL savescr
 6770                 SWI "OS_WriteS"
 6780                 EQUB31:EQUB1:EQUB1
 6790                 EQUB16:EQUB17:EQUB127:EQUS"Current Iterations: "
 6800                 EQUB 0
 6810                 ALIGN
 6820.iterloop        SWI "OS_WriteS"
 6830                 EQUB31:EQUB21:EQUB1
 6840.maxstr          EQUS "025"
 6850                 EQUB 0
 6860                 ALIGN
 6870.getkey          MOV R0,#&81
 6880                 MOV R1,#0
 6890                 MOV R2,#0
 6900                 SWI "OS_Byte"
 6910                 BCS getkey
 6920                 CMP R1,#13
 6930                 BEQ itergot
 6940                 CMP R1,#48
 6950                 BCC getkey
 6960                 CMP R1,#58
 6970                 BCS getkey
 6980                 ADR R0,maxstr
 6990                 LDRB R2,[R0,#1]
 7000                 STRB R2,[R0]
 7010                 LDRB R2,[R0,#2]
 7020                 STRB R2,[R0,#1]
 7030                 STRB R1,[R0,#2]
 7040                 B iterloop
 7050.itergot         ADR R0,maxstr
 7060                 LDRB R1,[R0]
 7070                 SUB R1,R1,#48
 7080                 MOV R2,#100
 7090                 MUL R3,R2,R1
 7100                 MOV R4,R3
 7110                 LDRB R1,[R0,#1]
 7120                 SUB R1,R1,#48
 7130                 MOV R2,#10
 7140                 MUL R3,R2,R1
 7150                 ADD R4,R4,R3
 7160                 LDRB R1,[R0,#2]
 7170                 SUB R1,R1,#48
 7180                 ADD R4,R4,R1
 7190                 ADR R0,maxiad
 7200                 LDR R0,[R0]
 7210                 STR R4,[R0]
 7220                 BL loadscr
 7230                 BL plotter
 7240                 B mploop
 7250.maxiad          EQUD maxit
 7260:
 7270.screen
 7280]
 7290NEXT
 7300REMOSCLI ("MEMORYI "+STR$~zoomin+" + 100"):END
 7310ENDPROC

� Mandelbrot Set Plotter
� By Dominic Ford
:
(� � �error:�
2:
<
�assemble
F� start
P�
Z:
d��error
n	� � �
x�:�" at line ";�
��R=0�5000:�
��
�:
���assemble
�� space &30000
�:
�� p=0 � 2 � 2
�P%=space
�
[OPT p
�:
�\ TASK START-UP
�.start          BL setup
�                MOV R0,#3
"                MOV R1,#&28000
.                SWI "OS_ChangeDynamicArea"
                 ADR R0,sload
"                 SWI "OS_CLI"
,#                ADR R0,startspr
6                 SWI "OS_CLI"
@                SWI 256+22
J                SWI 256+15
T                MOV R0,#&ED
^                MOV R1,#&80
h                 MOV R2,#&100
r!                SWI "OS_Plot"
|".startsploop    SWI "OS_Mouse"
�                CMP R2,#0
�#                BEQ startsploop
�                MOV R0,#200
�!                ADR R1,taskno
�                LDR R1,[R1]
�#                ADR R2,taskname
�)                SWI "Wimp_Initialise"
�                MOV R0,#0
�"                ADR R1,sprinfo
�)                SWI "Wimp_CreateIcon"
�!                ADR R1,sprnum
�                STR R0,[R1]
�                MOV R0,#0
                 SUB R0,R0,#1
                MOV R1,#0
                MOV R2,#0
&                 MOV R3,#1280
0                 MOV R4,#1024
:*                SWI "Wimp_ForceRedraw"
D.mainloop       MOV R0,#0
N"                ADR R1,qbuffer
X#                SWI "Wimp_Poll"
b                CMP R0,#17
l!                BEQ quitcheck
v                CMP R0,#18
�!                BEQ quitcheck
�.notquitted     CMP R0,#6
�!                BNE notactive
�"                ADR R1,qbuffer
�                MOV R2,#12
�"                LDR R3,[R1,R2]
�                 ADD R3,R3,#2
�                CMP R3,#0
�!                BNE notactive
�                MOV R2,#&10
�"                LDR R3,[R1,R2]
�!                ADR R4,sprnum
�                LDR R4,[R4]
                CMP R3,R4
!                BNE notactive
".mousewait      SWI "OS_Mouse"
                 CMP R2,#0
*!                BNE mousewait
4                MOV R0,#0
>#                ADR R1,wimpstat
H                STR R0,[R1]
R                ADR R0,prev
\                LDR R0,[R0]
f                CMP R0,#0
p                BEQ first
z                BL restart
�                B activec
�.first          BL startup
�!.activec        BL mandelplot
�                BL savescr
�                MOV R0,#0
�                 SUB R0,R0,#1
�                MOV R1,#0
�                MOV R2,#0
�                 MOV R3,#1280
�                 MOV R4,#1024
�*                SWI "Wimp_ForceRedraw"
�.notactive      ADR R0,prev
�                LDR R0,[R0]
                CMP R0,#1
#                BNE noextraplot
#                ADR R0,plotstat
$                LDR R0,[R0]
.                CMP R0,#1
8#                BNE noextraplot
B                MOV R0,#1
L#                ADR R1,wimpstat
V                STR R0,[R1]
`                BL contplot
j#                ADR R1,plotstat
t                STR R0,[R1]
~.noextraplot    B mainloop
�".quitcheck      ADR R1,qbuffer
�                MOV R2,#&10
�"                LDR R2,[R1,R2]
�                CMP R2,#0
�"                BNE notquitted
�!                SWI "OS_Exit"
�;.sload          EQUS "SLOAD <Obey$Dir>.!Sprites":EQUD 0
�                ALIGN
�,.taskname       EQUS "MandelPlot":EQUD 0
�                ALIGN
�".taskno         EQUD &4B534154
�                ALIGN
B.sprinfo        EQUD &FFFFFFFF:EQUD 0:EQUD 0:EQUD &64:EQUD &44

F                EQUD &1100302A:EQUD &6E616D21:EQUD &6C6564:EQUD &D
                ALIGN
.sprnum         EQUD 0
(                ALIGN
2G.qbuffer        EQUS"                                             "
<                ALIGN
F.wimpstat       EQUD 0
P                ALIGN
Z1.startspr       EQUS "SCHOOSE startup":EQUD 0
d                ALIGN
n:
x \ MANDELBROT SET CALCULATION
�\ R1=x |R2=y
�:
�
\ F0=xpos
�
\ F1=ypos
�
\ F2=u
�
\ F3=v
�:
�%.mandpix         STMFD R13!,{R14}
�                 MOV R11,#0
�G                 ADR R0,xmin                    \ Get X co-ordinate
�!EQUD &ECF00100 \ LDFE F0,[R0]
�!                 ADR R0,xstep
�!EQUD &ECF01100 \ LDFE F1,[R0]
EQUD &EE0711D7 \ FLTE F7,R1
"EQUD &EE192107 \ MLFE F2,F1,F7
"EQUD &EE080102 \ ADFE F0,F0,F2
":
,G                 ADR R0,ymin                    \ Get Y co-ordinate
6!EQUD &ECF01100 \ LDFE F1,[R0]
@!                 ADR R0,ystep
J!EQUD &ECF02100 \ LDFE F2,[R0]
TEQUD &EE0721D7 \ FLTE F7,R2
^"EQUD &EE1A3107 \ MLFE F3,F2,F7
h"EQUD &EE091103 \ ADFE F1,F1,F3
r:
|EQUD &EE08A100 \ MVFE F2,F0
�EQUD &EE08B101\  MVFE F3,F1
�.pixloop
�5EQUD &EE1A4102 \ MLFE F4,F2,F2        \ Finished?
�"EQUD &EE1B5103 \ MLFE F5,F3,F3
�"EQUD &EE0C6105 \ ADFE F6,F4,F5
�7EQUD &EED6F11C \ CMFE F6,#4           \ u^2+v^2>4 ?
�                 BCS found
�#                 ADD R11,R11,#1
�!                 ADR R3,maxit
�!                 LDR R10,[R3]
�                  CMP R11,R10
�                 BEQ found
�?EQUD &EE2C6105 \ SBFE F6,F4,F5                \ u=u^2-v^2+x
"EQUD &EE0E6100 \ ADFE F6,F6,F0
;EQUD &EE1A4103 \ MLFE F4,F2,F3                \ v=2uv+y
"EQUD &EE0C4104 \ ADFE F4,F4,F4
&"EQUD &EE0C4101 \ ADFE F4,F4,F1
0EQUD &EE08A106 \ MVFE F2,F6
:EQUD &EE08B104 \ MVFE F3,F4
D                 B pixloop
N:
X
.found
bMOV R0,R11
lLDMFD R13!,{PC}
v:
�
.setup
�EQUD &EE088108 \ MVFE F0,#0
�"EQUD &EE28010A \ SBFE F0,F0,#2
�                  ADR R0,xmin
�!EQUD &ECE00100 \ STFE F0,[R0]
�                  ADR R0,ymin
�!EQUD &ECE00100 \ STFE F0,[R0]
�EQUD &EE08910A \ MVFE F0,#2
�"EQUD &EE49010C \ DVFE F0,F0,#4
�"EQUD &EE48110C \ DVFE F0,F0,#4
�"EQUD &EE49010C \ DVFE F0,F0,#4
�"EQUD &EE48110C \ DVFE F0,F0,#4
�"EQUD &EE49010A \ DVFE F0,F0,#2
!                 ADR R0,ystep
!EQUD &ECE00100 \ STFE F0,[R0]
!                 ADR R0,xstep
 !EQUD &ECE00100 \ STFE F0,[R0]
*                 MOV PC,R14
4:
>.plotstat EQUD 0
H	ALIGN
R.prev EQUD 0
\	ALIGN
f:
p\ MAIN � CONTROLLER
z:
�%.plotter         STMFD R13!,{R14}
�                  MOV R9,#512
�                  ADR R2,step
�                  STR R9,[R2]
�.newstep         MOV R0,#0
�                 MOV R1,#0
�                 MOV R7,#0
�                 MOV R8,#0
� .pltloop         ADR R2,xstr
�                  STR R0,[R2]
�                  ADR R2,ystr
�                  STR R1,[R2]
�                 � R2,R7,#1
	                 CMP R2,#0
	                  BNE plotpix
	                 � R2,R8,#1
	$                 CMP R2,#0
	.                  BEQ plotted
	8$.plotpix         ADR R2,wimpstat
	B                  LDR R3,[R2]
	L!                 CMP R3,#&100
	V!                 BEQ plotstop
	`%                 MOV R3,R3,ASL #1
	j                  STR R3,[R2]
	t                 MOV R2,R1
	~                 MOV R1,R0
	�                 BL mandpix
	�                 BL point
	�$                 ADR R0,wimpstat
	�                  LDR R0,[R0]
	�                 CMP R0,#0
	�!                 BNE plotstop
	� .plottedb        ADR R2,xstr
	�                  LDR R0,[R2]
	�                  ADR R2,ystr
	�                  LDR R1,[R2]
	�                  ADR R2,step
	�                  LDR R9,[R2]
!                 ADD R0,R0,R9

!                 ADD R7,R7,#1
!                 CMP R0,#1024
                  BNE pltloop
(                 MOV R0,#0
2                 MOV R7,#0
<                 CMP R9,#3
F!                 BCS notfinal
P                 MOV R9,#4
Z!.notfinal        ADD R1,R1,R9
d!                 ADD R8,R8,#1
n!                 CMP R1,#1024
x                  BNE pltloop
�                  LDR R9,[R2]
�%                 MOV R9,R9,LSR #1
�                  STR R9,[R2]
�                 CMP R9,#1
�                  BNE newstep
�                 MOV R0,#0
�$                 LDMFD R13!,{PC}
�$.plotted         ADR R0,wimpstat
�                  LDR R1,[R0]
�                 CMP R1,#1
�!                 BEQ plottedb
�#                 SWI "OS_Mouse"
�                 CMP R2,#0
!                 BEQ plottedb
 .plotstop        ADR R0,xpns
                  STR R7,[R0]
"                  ADR R0,ypns
,                  STR R8,[R0]
6                 MOV R0,#1
@$                 LDMFD R13!,{PC}
J:
T%.contplot        STMFD R13!,{R14}
^                  ADR R0,xpns
h                  LDR R7,[R0]
r                  ADR R0,ypns
|                  LDR R8,[R0]
�                 B plottedb
�:
�\ SCREEN MEMORY HANDLING
�:
�".point           ADD R10,R0,#7
�#                 � R10,R10,#127
�                  ADR R2,xstr
�                  LDR R0,[R2]
�                  ADR R2,ystr
�                  LDR R1,[R2]
�"                 MOV R11,#&280
�%                 MOV R0,R0,LSR #1
�%                 MOV R1,R1,LSR #2
"                 SUB R0,R11,R0
%                 ADR R11,wimpstat
"                 LDR R11,[R11]
&                 CMP R11,#0
0%                 �Q R11,#&2000000
:%                 ADRNE R11,scread
D$                 LDRNE R11,[R11]
N*                 ADDNE R11,R11,#&28000
X#                 SUB R11,R11,R0
b"                 MOV R12,#&280
l"                 MUL R2,R1,R12
v#                 SUB R11,R11,R2
�                  ADR R0,step
�                  LDR R2,[R0]
�                 MOV R0,#0
�                 MOV R1,#0
�%.squplop         LDRB R3,[R11,R0]
�!                 � R3,R3,#128
�"                 ADD R3,R3,R10
�%                 STRB R3,[R11,R0]
�!                 ADD R0,R0,#1
�%                 CMP R0,R2,LSR #1
�                  BCC squplop
�                 MOV R0,#0
�&                 SUB R11,R11,#&280

!                 ADD R1,R1,#1

%                 CMP R1,R2,LSR #2

                  BCC squplop

                  MOV PC,R14

*:

4!.mousebox        ADR R0,xboxa

>                  LDR R0,[R0]

H!                 ADR R1,xboxb

R                  LDR R1,[R1]

\                 CMP R0,R1

f                  MOVCS R2,R0

p                  MOVCS R0,R1

z                  MOVCS R1,R2

�!                 ADR R2,yboxa

�                  LDR R2,[R2]

�!                 ADR R3,yboxb

�                  LDR R3,[R3]

�                 CMP R2,R3

�                  MOVCS R4,R2

�                  MOVCS R2,R3

�                  MOVCS R3,R4

�"                 MOV R11,#&280

�%                 MOV R4,R0,LSR #1

�%                 MOV R5,R2,LSR #2

�"                 SUB R4,R11,R4

�&                 MOV R11,#&2000000
#                 SUB R11,R11,R4
"                 MOV R12,#&280
"                 MUL R6,R5,R12
$#                 SUB R11,R11,R6
.                 MOV R4,#0
8                 MOV R5,R1
B!                 SUB R5,R5,R0
L%                 MOV R5,R5,LSR #1
V%.xbotlop         LDRB R6,[R11,R4]
`!                 � R6,R6,#128
j%                 STRB R6,[R11,R4]
t!                 ADD R4,R4,#1
~                 CMP R4,R5
�                  BCC xbotlop
�                 MOV R6,R3
�!                 SUB R6,R6,R2
�%                 MOV R6,R6,LSR #2
�!                 MOV R4,#&280
�!                 MUL R7,R6,R4
�                 MOV R6,R7
�                 MOV R4,#0
�&.yleftlop        LDRB R7,[R11,-R4]
�!                 � R7,R7,#128
�&                 STRB R7,[R11,-R4]
�$                 ADD R4,R4,#&280
                 CMP R4,R6

!                 BCC yleftlop
$                 RSB R4,R5,#&280
"                 \SUB R6,R6,R5
(&.yrightlop       LDRB R7,[R11,-R4]
2!                 � R7,R7,#128
<&                 STRB R7,[R11,-R4]
F$                 ADD R4,R4,#&280
P                 CMP R4,R6
Z"                 BCC yrightlop
d"                 \ADD R6,R6,R5
n#                 SUB R11,R11,R6
x                 MOV R4,#0
�%.xtoplop         LDRB R6,[R11,R4]
�!                 � R6,R6,#128
�%                 STRB R6,[R11,R4]
�!                 ADD R4,R4,#1
�                 CMP R4,R5
�                  BCC xtoplop
�                 MOV PC,R14
�:
�".savescr         ADR R1,scrmem
�                  LDR R0,[R1]
�"                 ADR R1,scread
�                  LDR R1,[R1]
�                 MOV R2,#0
#.savlop          LDR R3,[R0,R2]
#                 STR R3,[R1,R2]
!                 ADD R2,R2,#4
"#                 CMP R2,#&28000
,                 BNE savlop
6                 MOV PC,R14
@".loadscr         ADR R0,scrmem
J                  LDR R1,[R0]
T"                 ADR R0,scread
^                  LDR R0,[R0]
h                 MOV R2,#0
r                 B savlop
|:
�.xmin EQUD 0:EQUD0:EQUD0
�.ymin EQUD 0:EQUD0:EQUD0
�.xstep EQUD 0:EQUD0:EQUD0
�.ystep EQUD 0:EQUD0:EQUD0
�.scrmem EQUD &1FD8000
�.scread EQUD screen
�.maxit EQUD 25
�.xstr EQUD 0
�.ystr EQUD 0
�.xpns EQUD 0
�.ypns EQUD 0
�.step EQUD 0
�.xboxa EQUD 0
.xboxb EQUD 0
.yboxa EQUD 0
.yboxb EQUD 0
&:
0.startup STMFD R13!,{R14}
:         SWI 256+22
D         SWI 256+15
N         MOV R0,#106
X         MOV R1,#1
b         SWI "OS_Byte"
l         SWI 256+23
v         SWI 256+1
�         SWI 256
�         SWI 256
�         SWI 256
�         SWI 256
�         SWI 256
�         SWI 256
�         SWI 256
�         SWI 256
�         ADR R0,schoose
�         SWI "OS_CLI"
�         MOV R0,#&ED
�         MOV R1,#1024
�         ADR R2,ploty
         LDR R2,[R2]
         SWI "OS_Plot"
         SWI "OS_WriteS"
 )         EQUB17:EQUB255:EQUB17:EQUB32
*8         EQUB31:EQUB64:EQUB10:EQUS"Zoom In         "
48         EQUB31:EQUB64:EQUB12:EQUS"Reset           "
>         EQUB17:EQUB8
H8         EQUB31:EQUB64:EQUB16:EQUS"Iterations      "
R         EQUB17:EQUB6
\8         EQUB31:EQUB64:EQUB28:EQUS"Desktop         "
f8         EQUB31:EQUB64:EQUB30:EQUS"Quit Program    "
p!         EQUB17:EQUB128:EQUB0
z         ALIGN
�         BL plotter
�         ADR R1,plotad
�         LDR R1,[R1]
�         STR R0,[R1]
�         MOV R0,#1
�         ADR R1,prevad
�         LDR R1,[R1]
�         STR R0,[R1]
�         LDMFD R13!,{PC}
�.restart STMFD R13!,{R14}
�         SWI 256+22
�         SWI 256+15
�         MOV R0,#106
         MOV R1,#1
         SWI "OS_Byte"
         SWI 256+23
$         SWI 256+1
.         SWI 256
8         SWI 256
B         SWI 256
L         SWI 256
V         SWI 256
`         SWI 256
j         SWI 256
t         SWI 256
~         BL loadscr
�         LDMFD R13!,{PC}
�.mandelplot
�         STMFD R13!,{R14}
�.mploop  ADR R0,plotad
�         LDR R0,[R0]
�         LDR R0,[R0]
�         CMP R0,#1
�         BNE noplot
�         BL contplot
�         ADR R1,plotad
�         LDR R1,[R1]
�         STR R0,[R1]
.noplot  SWI "OS_Mouse"

         CMP R2,#0
         BEQ mploop
         CMP R0,#1024
(         BCC boxout
2         B function
<'.schoose EQUS "SCHOOSE logo":EQUD 0
F         ALIGN
P.ploty   EQUD 775
Z         ALIGN
d:
n.boxout  BL mousebox
x         BL savescr
�         SWI"OS_Mouse"
�         ADR R2,xboxa
�         STR R0,[R2]
�         ADR R2,yboxa
�         STR R1,[R2]
�.boxoutl CMP R0,#1024
�         MOVCS R0,#1024
�         SUBCS R0,R0,#1
�         ADR R2,xboxb
�         STR R0,[R2]
�         ADR R2,yboxb
�         STR R1,[R2]
�         ADR R2,wimpad
         LDR R2,[R2]
         MOV R0,#1
         STR R0,[R2]
"         BL mousebox
,         BL contplot
6         BL mousebox
@         SWI "OS_Mouse"
J         CMP R2,#0
T         BNE boxoutl
^         ADR R2,wimpad
h         LDR R2,[R2]
r         MOV R0,#0
|         STR R0,[R2]
�         BL loadscr
�         BL mousebox
�         B mploop
�.plotad  EQUD plotstat
�.wimpad  EQUD wimpstat
�.prevad  EQUD prev
�.function MOV R1,R1,LSR #5
�         CMP R1,#1
�         BEQ quittask
�         CMP R1,#3
�         BEQ desktop
�         CMP R1,#15
�         BEQ iterate
         CMP R1,#19
         BEQ resetpos
         CMP R1,#21
&         BEQ zoomin
0         B mploop
::
D \               Ș FUNCTIONS
N:
X.desktop LDMFD R13!,{PC}
b.quittask BL savescr
l         SWI 256+31
v         SWI 256
�         SWI 256
�         SWI "OS_WriteS"
�<         EQUB16:EQUB17:EQUB127:EQUS"Quit: Are You Sure?"
�(         EQUB13:EQUB10:EQUB13:EQUB10
�=         EQUS"Click LEFT to quit; RIGHT to cancel.":EQUB0
�         ALIGN
�.stopcl  SWI"OS_Mouse"
�         CMP R2,#0
�         BNE stopcl
�.quitlop SWI"OS_Mouse"
�         CMP R2,#4
�         BEQ quitokay
�         CMP R2,#1
         BLEQ loadscr
         BEQ mploop
         B quitlop
 .quitokay LDMFD R13!,{R0}
*         MOV R0,#0
4         SUB R0,R0,#1
>         MOV R1,#0
H         MOV R2,#0
R         MOV R3,#1280
\         MOV R4,#1024
f#         SWI "Wimp_ForceRedraw"
p         SWI "OS_Exit"
z:
�\        ZOOM FUNCTIONS
�:
�.resetpos        BL setup
�                 BL plotter
�                 B mploop
�:
�".zoomin          ADR R0,xminad
�                  LDR R0,[R0]
�#                 ADR R1,xstepad
�                  LDR R1,[R1]
�"                 ADR R2,yminad
�                  LDR R2,[R2]
�#                 ADR R3,ystepad
                  LDR R3,[R3]
"                 ADR R4,xboxat
                  LDR R4,[R4]
$                  LDR R4,[R4]
."                 ADR R5,xboxbt
8                  LDR R5,[R5]
B                  LDR R5,[R5]
L                 CMP R4,R5
V                  MOVCS R6,R4
`                  MOVCS R4,R5
j                  MOVCS R5,R6
t"                 ADR R6,yboxat
~                  LDR R6,[R6]
�                  LDR R6,[R6]
�0                 ADR R7,yboxbt     \ R0=xmin
�1                 LDR R7,[R7]       \ R1=xstep
�0                 LDR R7,[R7]       \ R2=ymin
�1                 CMP R6,R7         \ R3=ystep
�1                 MOVCS R8,R6       \ R4=xboxa
�1                 MOVCS R6,R7       \ R5=xboxb
�1                 MOVCS R7,R8       \ R6=yboxa
�1EQUD &ECF00100 \ LDFE F0,[R0]      \ R7=yboxb
�!EQUD &ECF11100 \ LDFE F1,[R1]
�EQUD &EE0241D2 \ FLTE F2,R4
�"EQUD &EE1A3101 \ MLFE F3,F2,F1
"EQUD &EE0B3100 \ ADFE F3,F3,F0

EQUD &EE0451D4 \ FLTE F4,R5
"EQUD &EE1C5101 \ MLFE F5,F4,F1
"EQUD &EE0D5100 \ ADFE F5,F5,F0
("EQUD &EE2D5103 \ SBFE F5,F5,F3
2!                 MOV R8,#1024
<EQUD &EE0681D6 \ FLTE F6,R8
F"EQUD &EE4D7106 \ DVFE F7,F5,F6
P!EQUD &ECE03100 \ STFE F3,[R0]
Z!EQUD &ECE17100 \ STFE F7,[R1]
d:
n!EQUD &ECF20100 \ LDFE F0,[R2]
x!EQUD &ECF31100 \ LDFE F1,[R3]
�EQUD &EE0261D2 \ FLTE F2,R6
�"EQUD &EE1A3101 \ MLFE F3,F2,F1
�"EQUD &EE0B3100 \ ADFE F3,F3,F0
�EQUD &EE0471D4 \ FLTE F4,R7
�"EQUD &EE1C5101 \ MLFE F5,F4,F1
�"EQUD &EE0D5100 \ ADFE F5,F5,F0
�"EQUD &EE2D5103 \ SBFE F5,F5,F3
�"EQUD &EE4D7106 \ DVFE F7,F5,F6
�!EQUD &ECE23100 \ STFE F3,[R2]
�!EQUD &ECE37100 \ STFE F7,[R3]
�                 BL plotter
�                 B mploop
�:
.xminad          EQUD xmin
.yminad          EQUD ymin
.xstepad         EQUD xstep
".ystepad         EQUD ystep
,.xboxat          EQUD xboxa
6.yboxat          EQUD yboxa
@.xboxbt          EQUD xboxb
J.yboxbt          EQUD yboxb
T:
^\ CHANGE MAXIMUM ITERATIONS
h.iterate         BL savescr
r$                 SWI "OS_WriteS"
|'                 EQUB31:EQUB1:EQUB1
�E                 EQUB16:EQUB17:EQUB127:EQUS"Current Iterations: "
�                 EQUB 0
�                 ALIGN
�$.iterloop        SWI "OS_WriteS"
�(                 EQUB31:EQUB21:EQUB1
�.maxstr          EQUS "025"
�                 EQUB 0
�                 ALIGN
� .getkey          MOV R0,#&81
�                 MOV R1,#0
�                 MOV R2,#0
�"                 SWI "OS_Byte"
�                 BCS getkey
                 CMP R1,#13
                  BEQ itergot
                 CMP R1,#48
&                 BCC getkey
0                 CMP R1,#58
:                 BCS getkey
D"                 ADR R0,maxstr
N$                 LDRB R2,[R0,#1]
X!                 STRB R2,[R0]
b$                 LDRB R2,[R0,#2]
l$                 STRB R2,[R0,#1]
v$                 STRB R1,[R0,#2]
�                 B iterloop
�".itergot         ADR R0,maxstr
�!                 LDRB R1,[R0]
�"                 SUB R1,R1,#48
�                  MOV R2,#100
�!                 MUL R3,R2,R1
�                 MOV R4,R3
�$                 LDRB R1,[R0,#1]
�"                 SUB R1,R1,#48
�                 MOV R2,#10
�!                 MUL R3,R2,R1
�!                 ADD R4,R4,R3
�$                 LDRB R1,[R0,#2]
"                 SUB R1,R1,#48
!                 ADD R4,R4,R1
"                 ADR R0,maxiad
                   LDR R0,[R0]
*                  STR R4,[R0]
4                 BL loadscr
>                 BL plotter
H                 B mploop
R.maxiad          EQUD maxit
\:
f.screen
p]
z�
�0�OSCLI ("MEMORYI "+STR$~zoomin+" + 100"):END
��
�
00000000  0d 00 0a 1c f4 20 4d 61  6e 64 65 6c 62 72 6f 74  |..... Mandelbrot|
00000010  20 53 65 74 20 50 6c 6f  74 74 65 72 0d 00 14 15  | Set Plotter....|
00000020  f4 20 42 79 20 44 6f 6d  69 6e 69 63 20 46 6f 72  |. By Dominic For|
00000030  64 0d 00 1e 05 3a 0d 00  28 10 ee 20 85 20 f2 65  |d....:..(.. . .e|
00000040  72 72 6f 72 3a e0 0d 00  32 05 3a 0d 00 3c 0d f2  |rror:...2.:..<..|
00000050  61 73 73 65 6d 62 6c 65  0d 00 46 0b d6 20 73 74  |assemble..F.. st|
00000060  61 72 74 0d 00 50 05 e0  0d 00 5a 05 3a 0d 00 64  |art..P....Z.:..d|
00000070  0b dd f2 65 72 72 6f 72  0d 00 6e 09 ee 20 85 20  |...error..n.. . |
00000080  87 0d 00 78 14 f6 3a f1  22 20 61 74 20 6c 69 6e  |...x..:." at lin|
00000090  65 20 22 3b 9e 0d 00 82  0f e3 52 3d 30 b8 35 30  |e ";......R=0.50|
000000a0  30 30 3a ed 0d 00 8c 05  e1 0d 00 96 05 3a 0d 00  |00:..........:..|
000000b0  a0 0e dd f2 61 73 73 65  6d 62 6c 65 0d 00 aa 12  |....assemble....|
000000c0  de 20 73 70 61 63 65 20  26 33 30 30 30 30 0d 00  |. space &30000..|
000000d0  b4 05 3a 0d 00 be 11 e3  20 70 3d 30 20 b8 20 32  |..:..... p=0 . 2|
000000e0  20 88 20 32 0d 00 c8 0c  50 25 3d 73 70 61 63 65  | . 2....P%=space|
000000f0  0d 00 d2 0a 5b 4f 50 54  20 70 0d 00 dc 05 3a 0d  |....[OPT p....:.|
00000100  00 e6 13 5c 20 54 41 53  4b 20 53 54 41 52 54 2d  |...\ TASK START-|
00000110  55 50 0d 00 f0 1c 2e 73  74 61 72 74 20 20 20 20  |UP.....start    |
00000120  20 20 20 20 20 20 42 4c  20 73 65 74 75 70 0d 00  |      BL setup..|
00000130  fa 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00000140  20 20 4d 4f 56 20 52 30  2c 23 33 0d 01 04 22 20  |  MOV R0,#3..." |
00000150  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00000160  4f 56 20 52 31 2c 23 26  32 38 30 30 30 0d 01 0e  |OV R1,#&28000...|
00000170  2e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000180  20 53 57 49 20 22 4f 53  5f 43 68 61 6e 67 65 44  | SWI "OS_ChangeD|
00000190  79 6e 61 6d 69 63 41 72  65 61 22 0d 01 18 20 20  |ynamicArea"...  |
000001a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
000001b0  44 52 20 52 30 2c 73 6c  6f 61 64 0d 01 22 20 20  |DR R0,sload.."  |
000001c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
000001d0  57 49 20 22 4f 53 5f 43  4c 49 22 0d 01 2c 23 20  |WI "OS_CLI"..,# |
000001e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
000001f0  44 52 20 52 30 2c 73 74  61 72 74 73 70 72 0d 01  |DR R0,startspr..|
00000200  36 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |6               |
00000210  20 20 53 57 49 20 22 4f  53 5f 43 4c 49 22 0d 01  |  SWI "OS_CLI"..|
00000220  40 1e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |@.              |
00000230  20 20 53 57 49 20 32 35  36 2b 32 32 0d 01 4a 1e  |  SWI 256+22..J.|
00000240  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000250  53 57 49 20 32 35 36 2b  31 35 0d 01 54 1f 20 20  |SWI 256+15..T.  |
00000260  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 4f  |              MO|
00000270  56 20 52 30 2c 23 26 45  44 0d 01 5e 1f 20 20 20  |V R0,#&ED..^.   |
00000280  20 20 20 20 20 20 20 20  20 20 20 20 20 4d 4f 56  |             MOV|
00000290  20 52 31 2c 23 26 38 30  0d 01 68 20 20 20 20 20  | R1,#&80..h     |
000002a0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
000002b0  52 32 2c 23 26 31 30 30  0d 01 72 21 20 20 20 20  |R2,#&100..r!    |
000002c0  20 20 20 20 20 20 20 20  20 20 20 20 53 57 49 20  |            SWI |
000002d0  22 4f 53 5f 50 6c 6f 74  22 0d 01 7c 22 2e 73 74  |"OS_Plot"..|".st|
000002e0  61 72 74 73 70 6c 6f 6f  70 20 20 20 20 53 57 49  |artsploop    SWI|
000002f0  20 22 4f 53 5f 4d 6f 75  73 65 22 0d 01 86 1d 20  | "OS_Mouse".... |
00000300  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 43  |               C|
00000310  4d 50 20 52 32 2c 23 30  0d 01 90 23 20 20 20 20  |MP R2,#0...#    |
00000320  20 20 20 20 20 20 20 20  20 20 20 20 42 45 51 20  |            BEQ |
00000330  73 74 61 72 74 73 70 6c  6f 6f 70 0d 01 9a 1f 20  |startsploop.... |
00000340  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00000350  4f 56 20 52 30 2c 23 32  30 30 0d 01 a4 21 20 20  |OV R0,#200...!  |
00000360  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
00000370  52 20 52 31 2c 74 61 73  6b 6e 6f 0d 01 ae 1f 20  |R R1,taskno.... |
00000380  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
00000390  44 52 20 52 31 2c 5b 52  31 5d 0d 01 b8 23 20 20  |DR R1,[R1]...#  |
000003a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
000003b0  52 20 52 32 2c 74 61 73  6b 6e 61 6d 65 0d 01 c2  |R R2,taskname...|
000003c0  29 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |)               |
000003d0  20 53 57 49 20 22 57 69  6d 70 5f 49 6e 69 74 69  | SWI "Wimp_Initi|
000003e0  61 6c 69 73 65 22 0d 01  cc 1d 20 20 20 20 20 20  |alise"....      |
000003f0  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 30  |          MOV R0|
00000400  2c 23 30 0d 01 d6 22 20  20 20 20 20 20 20 20 20  |,#0..."         |
00000410  20 20 20 20 20 20 20 41  44 52 20 52 31 2c 73 70  |       ADR R1,sp|
00000420  72 69 6e 66 6f 0d 01 e0  29 20 20 20 20 20 20 20  |rinfo...)       |
00000430  20 20 20 20 20 20 20 20  20 53 57 49 20 22 57 69  |         SWI "Wi|
00000440  6d 70 5f 43 72 65 61 74  65 49 63 6f 6e 22 0d 01  |mp_CreateIcon"..|
00000450  ea 21 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.!              |
00000460  20 20 41 44 52 20 52 31  2c 73 70 72 6e 75 6d 0d  |  ADR R1,sprnum.|
00000470  01 f4 1f 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00000480  20 20 20 53 54 52 20 52  30 2c 5b 52 31 5d 0d 01  |   STR R0,[R1]..|
00000490  fe 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
000004a0  20 20 4d 4f 56 20 52 30  2c 23 30 0d 02 08 20 20  |  MOV R0,#0...  |
000004b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
000004c0  55 42 20 52 30 2c 52 30  2c 23 31 0d 02 12 1d 20  |UB R0,R0,#1.... |
000004d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
000004e0  4f 56 20 52 31 2c 23 30  0d 02 1c 1d 20 20 20 20  |OV R1,#0....    |
000004f0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00000500  52 32 2c 23 30 0d 02 26  20 20 20 20 20 20 20 20  |R2,#0..&        |
00000510  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 33 2c  |         MOV R3,|
00000520  23 31 32 38 30 0d 02 30  20 20 20 20 20 20 20 20  |#1280..0        |
00000530  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 34 2c  |         MOV R4,|
00000540  23 31 30 32 34 0d 02 3a  2a 20 20 20 20 20 20 20  |#1024..:*       |
00000550  20 20 20 20 20 20 20 20  20 53 57 49 20 22 57 69  |         SWI "Wi|
00000560  6d 70 5f 46 6f 72 63 65  52 65 64 72 61 77 22 0d  |mp_ForceRedraw".|
00000570  02 44 1d 2e 6d 61 69 6e  6c 6f 6f 70 20 20 20 20  |.D..mainloop    |
00000580  20 20 20 4d 4f 56 20 52  30 2c 23 30 0d 02 4e 22  |   MOV R0,#0..N"|
00000590  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000005a0  41 44 52 20 52 31 2c 71  62 75 66 66 65 72 0d 02  |ADR R1,qbuffer..|
000005b0  58 23 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |X#              |
000005c0  20 20 53 57 49 20 22 57  69 6d 70 5f 50 6f 6c 6c  |  SWI "Wimp_Poll|
000005d0  22 0d 02 62 1e 20 20 20  20 20 20 20 20 20 20 20  |"..b.           |
000005e0  20 20 20 20 20 43 4d 50  20 52 30 2c 23 31 37 0d  |     CMP R0,#17.|
000005f0  02 6c 21 20 20 20 20 20  20 20 20 20 20 20 20 20  |.l!             |
00000600  20 20 20 42 45 51 20 71  75 69 74 63 68 65 63 6b  |   BEQ quitcheck|
00000610  0d 02 76 1e 20 20 20 20  20 20 20 20 20 20 20 20  |..v.            |
00000620  20 20 20 20 43 4d 50 20  52 30 2c 23 31 38 0d 02  |    CMP R0,#18..|
00000630  80 21 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.!              |
00000640  20 20 42 45 51 20 71 75  69 74 63 68 65 63 6b 0d  |  BEQ quitcheck.|
00000650  02 8a 1d 2e 6e 6f 74 71  75 69 74 74 65 64 20 20  |....notquitted  |
00000660  20 20 20 43 4d 50 20 52  30 2c 23 36 0d 02 94 21  |   CMP R0,#6...!|
00000670  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000680  42 4e 45 20 6e 6f 74 61  63 74 69 76 65 0d 02 9e  |BNE notactive...|
00000690  22 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |"               |
000006a0  20 41 44 52 20 52 31 2c  71 62 75 66 66 65 72 0d  | ADR R1,qbuffer.|
000006b0  02 a8 1e 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
000006c0  20 20 20 4d 4f 56 20 52  32 2c 23 31 32 0d 02 b2  |   MOV R2,#12...|
000006d0  22 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |"               |
000006e0  20 4c 44 52 20 52 33 2c  5b 52 31 2c 52 32 5d 0d  | LDR R3,[R1,R2].|
000006f0  02 bc 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00000700  20 20 20 41 44 44 20 52  33 2c 52 33 2c 23 32 0d  |   ADD R3,R3,#2.|
00000710  02 c6 1d 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00000720  20 20 20 43 4d 50 20 52  33 2c 23 30 0d 02 d0 21  |   CMP R3,#0...!|
00000730  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000740  42 4e 45 20 6e 6f 74 61  63 74 69 76 65 0d 02 da  |BNE notactive...|
00000750  1f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000760  20 4d 4f 56 20 52 32 2c  23 26 31 30 0d 02 e4 22  | MOV R2,#&10..."|
00000770  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000780  4c 44 52 20 52 33 2c 5b  52 31 2c 52 32 5d 0d 02  |LDR R3,[R1,R2]..|
00000790  ee 21 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.!              |
000007a0  20 20 41 44 52 20 52 34  2c 73 70 72 6e 75 6d 0d  |  ADR R4,sprnum.|
000007b0  02 f8 1f 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
000007c0  20 20 20 4c 44 52 20 52  34 2c 5b 52 34 5d 0d 03  |   LDR R4,[R4]..|
000007d0  02 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
000007e0  20 20 43 4d 50 20 52 33  2c 52 34 0d 03 0c 21 20  |  CMP R3,R4...! |
000007f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
00000800  4e 45 20 6e 6f 74 61 63  74 69 76 65 0d 03 16 22  |NE notactive..."|
00000810  2e 6d 6f 75 73 65 77 61  69 74 20 20 20 20 20 20  |.mousewait      |
00000820  53 57 49 20 22 4f 53 5f  4d 6f 75 73 65 22 0d 03  |SWI "OS_Mouse"..|
00000830  20 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  | .              |
00000840  20 20 43 4d 50 20 52 32  2c 23 30 0d 03 2a 21 20  |  CMP R2,#0..*! |
00000850  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
00000860  4e 45 20 6d 6f 75 73 65  77 61 69 74 0d 03 34 1d  |NE mousewait..4.|
00000870  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000880  4d 4f 56 20 52 30 2c 23  30 0d 03 3e 23 20 20 20  |MOV R0,#0..>#   |
00000890  20 20 20 20 20 20 20 20  20 20 20 20 20 41 44 52  |             ADR|
000008a0  20 52 31 2c 77 69 6d 70  73 74 61 74 0d 03 48 1f  | R1,wimpstat..H.|
000008b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000008c0  53 54 52 20 52 30 2c 5b  52 31 5d 0d 03 52 1f 20  |STR R0,[R1]..R. |
000008d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
000008e0  44 52 20 52 30 2c 70 72  65 76 0d 03 5c 1f 20 20  |DR R0,prev..\.  |
000008f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
00000900  52 20 52 30 2c 5b 52 30  5d 0d 03 66 1d 20 20 20  |R R0,[R0]..f.   |
00000910  20 20 20 20 20 20 20 20  20 20 20 20 20 43 4d 50  |             CMP|
00000920  20 52 30 2c 23 30 0d 03  70 1d 20 20 20 20 20 20  | R0,#0..p.      |
00000930  20 20 20 20 20 20 20 20  20 20 42 45 51 20 66 69  |          BEQ fi|
00000940  72 73 74 0d 03 7a 1e 20  20 20 20 20 20 20 20 20  |rst..z.         |
00000950  20 20 20 20 20 20 20 42  4c 20 72 65 73 74 61 72  |       BL restar|
00000960  74 0d 03 84 1d 20 20 20  20 20 20 20 20 20 20 20  |t....           |
00000970  20 20 20 20 20 42 20 61  63 74 69 76 65 63 0d 03  |     B activec..|
00000980  8e 1e 2e 66 69 72 73 74  20 20 20 20 20 20 20 20  |...first        |
00000990  20 20 42 4c 20 73 74 61  72 74 75 70 0d 03 98 21  |  BL startup...!|
000009a0  2e 61 63 74 69 76 65 63  20 20 20 20 20 20 20 20  |.activec        |
000009b0  42 4c 20 6d 61 6e 64 65  6c 70 6c 6f 74 0d 03 a2  |BL mandelplot...|
000009c0  1e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
000009d0  20 42 4c 20 73 61 76 65  73 63 72 0d 03 ac 1d 20  | BL savescr.... |
000009e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
000009f0  4f 56 20 52 30 2c 23 30  0d 03 b6 20 20 20 20 20  |OV R0,#0...     |
00000a00  20 20 20 20 20 20 20 20  20 20 20 20 53 55 42 20  |            SUB |
00000a10  52 30 2c 52 30 2c 23 31  0d 03 c0 1d 20 20 20 20  |R0,R0,#1....    |
00000a20  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00000a30  52 31 2c 23 30 0d 03 ca  1d 20 20 20 20 20 20 20  |R1,#0....       |
00000a40  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 32 2c  |         MOV R2,|
00000a50  23 30 0d 03 d4 20 20 20  20 20 20 20 20 20 20 20  |#0...           |
00000a60  20 20 20 20 20 20 4d 4f  56 20 52 33 2c 23 31 32  |      MOV R3,#12|
00000a70  38 30 0d 03 de 20 20 20  20 20 20 20 20 20 20 20  |80...           |
00000a80  20 20 20 20 20 20 4d 4f  56 20 52 34 2c 23 31 30  |      MOV R4,#10|
00000a90  32 34 0d 03 e8 2a 20 20  20 20 20 20 20 20 20 20  |24...*          |
00000aa0  20 20 20 20 20 20 53 57  49 20 22 57 69 6d 70 5f  |      SWI "Wimp_|
00000ab0  46 6f 72 63 65 52 65 64  72 61 77 22 0d 03 f2 1f  |ForceRedraw"....|
00000ac0  2e 6e 6f 74 61 63 74 69  76 65 20 20 20 20 20 20  |.notactive      |
00000ad0  41 44 52 20 52 30 2c 70  72 65 76 0d 03 fc 1f 20  |ADR R0,prev.... |
00000ae0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
00000af0  44 52 20 52 30 2c 5b 52  30 5d 0d 04 06 1d 20 20  |DR R0,[R0]....  |
00000b00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
00000b10  50 20 52 30 2c 23 31 0d  04 10 23 20 20 20 20 20  |P R0,#1...#     |
00000b20  20 20 20 20 20 20 20 20  20 20 20 42 4e 45 20 6e  |           BNE n|
00000b30  6f 65 78 74 72 61 70 6c  6f 74 0d 04 1a 23 20 20  |oextraplot...#  |
00000b40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
00000b50  52 20 52 30 2c 70 6c 6f  74 73 74 61 74 0d 04 24  |R R0,plotstat..$|
00000b60  1f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000b70  20 4c 44 52 20 52 30 2c  5b 52 30 5d 0d 04 2e 1d  | LDR R0,[R0]....|
00000b80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000b90  43 4d 50 20 52 30 2c 23  31 0d 04 38 23 20 20 20  |CMP R0,#1..8#   |
00000ba0  20 20 20 20 20 20 20 20  20 20 20 20 20 42 4e 45  |             BNE|
00000bb0  20 6e 6f 65 78 74 72 61  70 6c 6f 74 0d 04 42 1d  | noextraplot..B.|
00000bc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000bd0  4d 4f 56 20 52 30 2c 23  31 0d 04 4c 23 20 20 20  |MOV R0,#1..L#   |
00000be0  20 20 20 20 20 20 20 20  20 20 20 20 20 41 44 52  |             ADR|
00000bf0  20 52 31 2c 77 69 6d 70  73 74 61 74 0d 04 56 1f  | R1,wimpstat..V.|
00000c00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000c10  53 54 52 20 52 30 2c 5b  52 31 5d 0d 04 60 1f 20  |STR R0,[R1]..`. |
00000c20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
00000c30  4c 20 63 6f 6e 74 70 6c  6f 74 0d 04 6a 23 20 20  |L contplot..j#  |
00000c40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
00000c50  52 20 52 31 2c 70 6c 6f  74 73 74 61 74 0d 04 74  |R R1,plotstat..t|
00000c60  1f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000c70  20 53 54 52 20 52 30 2c  5b 52 31 5d 0d 04 7e 1e  | STR R0,[R1]..~.|
00000c80  2e 6e 6f 65 78 74 72 61  70 6c 6f 74 20 20 20 20  |.noextraplot    |
00000c90  42 20 6d 61 69 6e 6c 6f  6f 70 0d 04 88 22 2e 71  |B mainloop...".q|
00000ca0  75 69 74 63 68 65 63 6b  20 20 20 20 20 20 41 44  |uitcheck      AD|
00000cb0  52 20 52 31 2c 71 62 75  66 66 65 72 0d 04 92 1f  |R R1,qbuffer....|
00000cc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000cd0  4d 4f 56 20 52 32 2c 23  26 31 30 0d 04 9c 22 20  |MOV R2,#&10..." |
00000ce0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
00000cf0  44 52 20 52 32 2c 5b 52  31 2c 52 32 5d 0d 04 a6  |DR R2,[R1,R2]...|
00000d00  1d 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000d10  20 43 4d 50 20 52 32 2c  23 30 0d 04 b0 22 20 20  | CMP R2,#0..."  |
00000d20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 42 4e  |              BN|
00000d30  45 20 6e 6f 74 71 75 69  74 74 65 64 0d 04 ba 21  |E notquitted...!|
00000d40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000d50  53 57 49 20 22 4f 53 5f  45 78 69 74 22 0d 04 c4  |SWI "OS_Exit"...|
00000d60  3b 2e 73 6c 6f 61 64 20  20 20 20 20 20 20 20 20  |;.sload         |
00000d70  20 45 51 55 53 20 22 53  4c 4f 41 44 20 3c 4f 62  | EQUS "SLOAD <Ob|
00000d80  65 79 24 44 69 72 3e 2e  21 53 70 72 69 74 65 73  |ey$Dir>.!Sprites|
00000d90  22 3a 45 51 55 44 20 30  0d 04 ce 19 20 20 20 20  |":EQUD 0....    |
00000da0  20 20 20 20 20 20 20 20  20 20 20 20 41 4c 49 47  |            ALIG|
00000db0  4e 0d 04 d8 2c 2e 74 61  73 6b 6e 61 6d 65 20 20  |N...,.taskname  |
00000dc0  20 20 20 20 20 45 51 55  53 20 22 4d 61 6e 64 65  |     EQUS "Mande|
00000dd0  6c 50 6c 6f 74 22 3a 45  51 55 44 20 30 0d 04 e2  |lPlot":EQUD 0...|
00000de0  19 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000df0  20 41 4c 49 47 4e 0d 04  ec 22 2e 74 61 73 6b 6e  | ALIGN...".taskn|
00000e00  6f 20 20 20 20 20 20 20  20 20 45 51 55 44 20 26  |o         EQUD &|
00000e10  34 42 35 33 34 31 35 34  0d 04 f6 19 20 20 20 20  |4B534154....    |
00000e20  20 20 20 20 20 20 20 20  20 20 20 20 41 4c 49 47  |            ALIG|
00000e30  4e 0d 05 00 42 2e 73 70  72 69 6e 66 6f 20 20 20  |N...B.sprinfo   |
00000e40  20 20 20 20 20 45 51 55  44 20 26 46 46 46 46 46  |     EQUD &FFFFF|
00000e50  46 46 46 3a 45 51 55 44  20 30 3a 45 51 55 44 20  |FFF:EQUD 0:EQUD |
00000e60  30 3a 45 51 55 44 20 26  36 34 3a 45 51 55 44 20  |0:EQUD &64:EQUD |
00000e70  26 34 34 0d 05 0a 46 20  20 20 20 20 20 20 20 20  |&44...F         |
00000e80  20 20 20 20 20 20 20 45  51 55 44 20 26 31 31 30  |       EQUD &110|
00000e90  30 33 30 32 41 3a 45 51  55 44 20 26 36 45 36 31  |0302A:EQUD &6E61|
00000ea0  36 44 32 31 3a 45 51 55  44 20 26 36 43 36 35 36  |6D21:EQUD &6C656|
00000eb0  34 3a 45 51 55 44 20 26  44 0d 05 14 19 20 20 20  |4:EQUD &D....   |
00000ec0  20 20 20 20 20 20 20 20  20 20 20 20 20 41 4c 49  |             ALI|
00000ed0  47 4e 0d 05 1e 1a 2e 73  70 72 6e 75 6d 20 20 20  |GN.....sprnum   |
00000ee0  20 20 20 20 20 20 45 51  55 44 20 30 0d 05 28 19  |      EQUD 0..(.|
00000ef0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000f00  41 4c 49 47 4e 0d 05 32  47 2e 71 62 75 66 66 65  |ALIGN..2G.qbuffe|
00000f10  72 20 20 20 20 20 20 20  20 45 51 55 53 22 20 20  |r        EQUS"  |
00000f20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00000f40  20 20 20 20 20 20 20 20  20 20 20 22 0d 05 3c 19  |           "..<.|
00000f50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000f60  41 4c 49 47 4e 0d 05 46  1a 2e 77 69 6d 70 73 74  |ALIGN..F..wimpst|
00000f70  61 74 20 20 20 20 20 20  20 45 51 55 44 20 30 0d  |at       EQUD 0.|
00000f80  05 50 19 20 20 20 20 20  20 20 20 20 20 20 20 20  |.P.             |
00000f90  20 20 20 41 4c 49 47 4e  0d 05 5a 31 2e 73 74 61  |   ALIGN..Z1.sta|
00000fa0  72 74 73 70 72 20 20 20  20 20 20 20 45 51 55 53  |rtspr       EQUS|
00000fb0  20 22 53 43 48 4f 4f 53  45 20 73 74 61 72 74 75  | "SCHOOSE startu|
00000fc0  70 22 3a 45 51 55 44 20  30 0d 05 64 19 20 20 20  |p":EQUD 0..d.   |
00000fd0  20 20 20 20 20 20 20 20  20 20 20 20 20 41 4c 49  |             ALI|
00000fe0  47 4e 0d 05 6e 05 3a 0d  05 78 20 5c 20 4d 41 4e  |GN..n.:..x \ MAN|
00000ff0  44 45 4c 42 52 4f 54 20  53 45 54 20 43 41 4c 43  |DELBROT SET CALC|
00001000  55 4c 41 54 49 4f 4e 0d  05 82 10 5c 20 52 31 3d  |ULATION....\ R1=|
00001010  78 20 7c 52 32 3d 79 0d  05 8c 05 3a 0d 05 96 0d  |x |R2=y....:....|
00001020  5c 20 46 30 3d 78 70 6f  73 0d 05 a0 0d 5c 20 46  |\ F0=xpos....\ F|
00001030  31 3d 79 70 6f 73 0d 05  aa 0a 5c 20 46 32 3d 75  |1=ypos....\ F2=u|
00001040  0d 05 b4 0a 5c 20 46 33  3d 76 0d 05 be 05 3a 0d  |....\ F3=v....:.|
00001050  05 c8 25 2e 6d 61 6e 64  70 69 78 20 20 20 20 20  |..%.mandpix     |
00001060  20 20 20 20 53 54 4d 46  44 20 52 31 33 21 2c 7b  |    STMFD R13!,{|
00001070  52 31 34 7d 0d 05 d2 1f  20 20 20 20 20 20 20 20  |R14}....        |
00001080  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 31 31  |         MOV R11|
00001090  2c 23 30 0d 05 dc 47 20  20 20 20 20 20 20 20 20  |,#0...G         |
000010a0  20 20 20 20 20 20 20 20  41 44 52 20 52 30 2c 78  |        ADR R0,x|
000010b0  6d 69 6e 20 20 20 20 20  20 20 20 20 20 20 20 20  |min             |
000010c0  20 20 20 20 20 20 20 5c  20 47 65 74 20 58 20 63  |       \ Get X c|
000010d0  6f 2d 6f 72 64 69 6e 61  74 65 0d 05 e6 21 45 51  |o-ordinate...!EQ|
000010e0  55 44 20 26 45 43 46 30  30 31 30 30 20 5c 20 4c  |UD &ECF00100 \ L|
000010f0  44 46 45 20 46 30 2c 5b  52 30 5d 0d 05 f0 21 20  |DFE F0,[R0]...! |
00001100  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001110  41 44 52 20 52 30 2c 78  73 74 65 70 0d 05 fa 21  |ADR R0,xstep...!|
00001120  45 51 55 44 20 26 45 43  46 30 31 31 30 30 20 5c  |EQUD &ECF01100 \|
00001130  20 4c 44 46 45 20 46 31  2c 5b 52 30 5d 0d 06 04  | LDFE F1,[R0]...|
00001140  1f 45 51 55 44 20 26 45  45 30 37 31 31 44 37 20  |.EQUD &EE0711D7 |
00001150  5c 20 46 4c 54 45 20 46  37 2c 52 31 0d 06 0e 22  |\ FLTE F7,R1..."|
00001160  45 51 55 44 20 26 45 45  31 39 32 31 30 37 20 5c  |EQUD &EE192107 \|
00001170  20 4d 4c 46 45 20 46 32  2c 46 31 2c 46 37 0d 06  | MLFE F2,F1,F7..|
00001180  18 22 45 51 55 44 20 26  45 45 30 38 30 31 30 32  |."EQUD &EE080102|
00001190  20 5c 20 41 44 46 45 20  46 30 2c 46 30 2c 46 32  | \ ADFE F0,F0,F2|
000011a0  0d 06 22 05 3a 0d 06 2c  47 20 20 20 20 20 20 20  |..".:..,G       |
000011b0  20 20 20 20 20 20 20 20  20 20 41 44 52 20 52 30  |          ADR R0|
000011c0  2c 79 6d 69 6e 20 20 20  20 20 20 20 20 20 20 20  |,ymin           |
000011d0  20 20 20 20 20 20 20 20  20 5c 20 47 65 74 20 59  |         \ Get Y|
000011e0  20 63 6f 2d 6f 72 64 69  6e 61 74 65 0d 06 36 21  | co-ordinate..6!|
000011f0  45 51 55 44 20 26 45 43  46 30 31 31 30 30 20 5c  |EQUD &ECF01100 \|
00001200  20 4c 44 46 45 20 46 31  2c 5b 52 30 5d 0d 06 40  | LDFE F1,[R0]..@|
00001210  21 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |!               |
00001220  20 20 41 44 52 20 52 30  2c 79 73 74 65 70 0d 06  |  ADR R0,ystep..|
00001230  4a 21 45 51 55 44 20 26  45 43 46 30 32 31 30 30  |J!EQUD &ECF02100|
00001240  20 5c 20 4c 44 46 45 20  46 32 2c 5b 52 30 5d 0d  | \ LDFE F2,[R0].|
00001250  06 54 1f 45 51 55 44 20  26 45 45 30 37 32 31 44  |.T.EQUD &EE0721D|
00001260  37 20 5c 20 46 4c 54 45  20 46 37 2c 52 32 0d 06  |7 \ FLTE F7,R2..|
00001270  5e 22 45 51 55 44 20 26  45 45 31 41 33 31 30 37  |^"EQUD &EE1A3107|
00001280  20 5c 20 4d 4c 46 45 20  46 33 2c 46 32 2c 46 37  | \ MLFE F3,F2,F7|
00001290  0d 06 68 22 45 51 55 44  20 26 45 45 30 39 31 31  |..h"EQUD &EE0911|
000012a0  30 33 20 5c 20 41 44 46  45 20 46 31 2c 46 31 2c  |03 \ ADFE F1,F1,|
000012b0  46 33 0d 06 72 05 3a 0d  06 7c 1f 45 51 55 44 20  |F3..r.:..|.EQUD |
000012c0  26 45 45 30 38 41 31 30  30 20 5c 20 4d 56 46 45  |&EE08A100 \ MVFE|
000012d0  20 46 32 2c 46 30 0d 06  86 1f 45 51 55 44 20 26  | F2,F0....EQUD &|
000012e0  45 45 30 38 42 31 30 31  5c 20 20 4d 56 46 45 20  |EE08B101\  MVFE |
000012f0  46 33 2c 46 31 0d 06 90  0c 2e 70 69 78 6c 6f 6f  |F3,F1.....pixloo|
00001300  70 0d 06 9a 35 45 51 55  44 20 26 45 45 31 41 34  |p...5EQUD &EE1A4|
00001310  31 30 32 20 5c 20 4d 4c  46 45 20 46 34 2c 46 32  |102 \ MLFE F4,F2|
00001320  2c 46 32 20 20 20 20 20  20 20 20 5c 20 46 69 6e  |,F2        \ Fin|
00001330  69 73 68 65 64 3f 0d 06  a4 22 45 51 55 44 20 26  |ished?..."EQUD &|
00001340  45 45 31 42 35 31 30 33  20 5c 20 4d 4c 46 45 20  |EE1B5103 \ MLFE |
00001350  46 35 2c 46 33 2c 46 33  0d 06 ae 22 45 51 55 44  |F5,F3,F3..."EQUD|
00001360  20 26 45 45 30 43 36 31  30 35 20 5c 20 41 44 46  | &EE0C6105 \ ADF|
00001370  45 20 46 36 2c 46 34 2c  46 35 0d 06 b8 37 45 51  |E F6,F4,F5...7EQ|
00001380  55 44 20 26 45 45 44 36  46 31 31 43 20 5c 20 43  |UD &EED6F11C \ C|
00001390  4d 46 45 20 46 36 2c 23  34 20 20 20 20 20 20 20  |MFE F6,#4       |
000013a0  20 20 20 20 5c 20 75 5e  32 2b 76 5e 32 3e 34 20  |    \ u^2+v^2>4 |
000013b0  3f 0d 06 c2 1e 20 20 20  20 20 20 20 20 20 20 20  |?....           |
000013c0  20 20 20 20 20 20 42 43  53 20 66 6f 75 6e 64 0d  |      BCS found.|
000013d0  06 cc 23 20 20 20 20 20  20 20 20 20 20 20 20 20  |..#             |
000013e0  20 20 20 20 41 44 44 20  52 31 31 2c 52 31 31 2c  |    ADD R11,R11,|
000013f0  23 31 0d 06 d6 21 20 20  20 20 20 20 20 20 20 20  |#1...!          |
00001400  20 20 20 20 20 20 20 41  44 52 20 52 33 2c 6d 61  |       ADR R3,ma|
00001410  78 69 74 0d 06 e0 21 20  20 20 20 20 20 20 20 20  |xit...!         |
00001420  20 20 20 20 20 20 20 20  4c 44 52 20 52 31 30 2c  |        LDR R10,|
00001430  5b 52 33 5d 0d 06 ea 20  20 20 20 20 20 20 20 20  |[R3]...         |
00001440  20 20 20 20 20 20 20 20  20 43 4d 50 20 52 31 31  |         CMP R11|
00001450  2c 52 31 30 0d 06 f4 1e  20 20 20 20 20 20 20 20  |,R10....        |
00001460  20 20 20 20 20 20 20 20  20 42 45 51 20 66 6f 75  |         BEQ fou|
00001470  6e 64 0d 06 fe 3f 45 51  55 44 20 26 45 45 32 43  |nd...?EQUD &EE2C|
00001480  36 31 30 35 20 5c 20 53  42 46 45 20 46 36 2c 46  |6105 \ SBFE F6,F|
00001490  34 2c 46 35 20 20 20 20  20 20 20 20 20 20 20 20  |4,F5            |
000014a0  20 20 20 20 5c 20 75 3d  75 5e 32 2d 76 5e 32 2b  |    \ u=u^2-v^2+|
000014b0  78 0d 07 08 22 45 51 55  44 20 26 45 45 30 45 36  |x..."EQUD &EE0E6|
000014c0  31 30 30 20 5c 20 41 44  46 45 20 46 36 2c 46 36  |100 \ ADFE F6,F6|
000014d0  2c 46 30 0d 07 12 3b 45  51 55 44 20 26 45 45 31  |,F0...;EQUD &EE1|
000014e0  41 34 31 30 33 20 5c 20  4d 4c 46 45 20 46 34 2c  |A4103 \ MLFE F4,|
000014f0  46 32 2c 46 33 20 20 20  20 20 20 20 20 20 20 20  |F2,F3           |
00001500  20 20 20 20 20 5c 20 76  3d 32 75 76 2b 79 0d 07  |     \ v=2uv+y..|
00001510  1c 22 45 51 55 44 20 26  45 45 30 43 34 31 30 34  |."EQUD &EE0C4104|
00001520  20 5c 20 41 44 46 45 20  46 34 2c 46 34 2c 46 34  | \ ADFE F4,F4,F4|
00001530  0d 07 26 22 45 51 55 44  20 26 45 45 30 43 34 31  |..&"EQUD &EE0C41|
00001540  30 31 20 5c 20 41 44 46  45 20 46 34 2c 46 34 2c  |01 \ ADFE F4,F4,|
00001550  46 31 0d 07 30 1f 45 51  55 44 20 26 45 45 30 38  |F1..0.EQUD &EE08|
00001560  41 31 30 36 20 5c 20 4d  56 46 45 20 46 32 2c 46  |A106 \ MVFE F2,F|
00001570  36 0d 07 3a 1f 45 51 55  44 20 26 45 45 30 38 42  |6..:.EQUD &EE08B|
00001580  31 30 34 20 5c 20 4d 56  46 45 20 46 33 2c 46 34  |104 \ MVFE F3,F4|
00001590  0d 07 44 1e 20 20 20 20  20 20 20 20 20 20 20 20  |..D.            |
000015a0  20 20 20 20 20 42 20 70  69 78 6c 6f 6f 70 0d 07  |     B pixloop..|
000015b0  4e 05 3a 0d 07 58 0a 2e  66 6f 75 6e 64 0d 07 62  |N.:..X..found..b|
000015c0  0e 4d 4f 56 20 52 30 2c  52 31 31 0d 07 6c 13 4c  |.MOV R0,R11..l.L|
000015d0  44 4d 46 44 20 52 31 33  21 2c 7b 50 43 7d 0d 07  |DMFD R13!,{PC}..|
000015e0  76 05 3a 0d 07 80 0a 2e  73 65 74 75 70 0d 07 8a  |v.:.....setup...|
000015f0  1f 45 51 55 44 20 26 45  45 30 38 38 31 30 38 20  |.EQUD &EE088108 |
00001600  5c 20 4d 56 46 45 20 46  30 2c 23 30 0d 07 94 22  |\ MVFE F0,#0..."|
00001610  45 51 55 44 20 26 45 45  32 38 30 31 30 41 20 5c  |EQUD &EE28010A \|
00001620  20 53 42 46 45 20 46 30  2c 46 30 2c 23 32 0d 07  | SBFE F0,F0,#2..|
00001630  9e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001640  20 20 20 41 44 52 20 52  30 2c 78 6d 69 6e 0d 07  |   ADR R0,xmin..|
00001650  a8 21 45 51 55 44 20 26  45 43 45 30 30 31 30 30  |.!EQUD &ECE00100|
00001660  20 5c 20 53 54 46 45 20  46 30 2c 5b 52 30 5d 0d  | \ STFE F0,[R0].|
00001670  07 b2 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001680  20 20 20 20 41 44 52 20  52 30 2c 79 6d 69 6e 0d  |    ADR R0,ymin.|
00001690  07 bc 21 45 51 55 44 20  26 45 43 45 30 30 31 30  |..!EQUD &ECE0010|
000016a0  30 20 5c 20 53 54 46 45  20 46 30 2c 5b 52 30 5d  |0 \ STFE F0,[R0]|
000016b0  0d 07 c6 1f 45 51 55 44  20 26 45 45 30 38 39 31  |....EQUD &EE0891|
000016c0  30 41 20 5c 20 4d 56 46  45 20 46 30 2c 23 32 0d  |0A \ MVFE F0,#2.|
000016d0  07 d0 22 45 51 55 44 20  26 45 45 34 39 30 31 30  |.."EQUD &EE49010|
000016e0  43 20 5c 20 44 56 46 45  20 46 30 2c 46 30 2c 23  |C \ DVFE F0,F0,#|
000016f0  34 0d 07 da 22 45 51 55  44 20 26 45 45 34 38 31  |4..."EQUD &EE481|
00001700  31 30 43 20 5c 20 44 56  46 45 20 46 30 2c 46 30  |10C \ DVFE F0,F0|
00001710  2c 23 34 0d 07 e4 22 45  51 55 44 20 26 45 45 34  |,#4..."EQUD &EE4|
00001720  39 30 31 30 43 20 5c 20  44 56 46 45 20 46 30 2c  |9010C \ DVFE F0,|
00001730  46 30 2c 23 34 0d 07 ee  22 45 51 55 44 20 26 45  |F0,#4..."EQUD &E|
00001740  45 34 38 31 31 30 43 20  5c 20 44 56 46 45 20 46  |E48110C \ DVFE F|
00001750  30 2c 46 30 2c 23 34 0d  07 f8 22 45 51 55 44 20  |0,F0,#4..."EQUD |
00001760  26 45 45 34 39 30 31 30  41 20 5c 20 44 56 46 45  |&EE49010A \ DVFE|
00001770  20 46 30 2c 46 30 2c 23  32 0d 08 02 21 20 20 20  | F0,F0,#2...!   |
00001780  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
00001790  52 20 52 30 2c 79 73 74  65 70 0d 08 0c 21 45 51  |R R0,ystep...!EQ|
000017a0  55 44 20 26 45 43 45 30  30 31 30 30 20 5c 20 53  |UD &ECE00100 \ S|
000017b0  54 46 45 20 46 30 2c 5b  52 30 5d 0d 08 16 21 20  |TFE F0,[R0]...! |
000017c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000017d0  41 44 52 20 52 30 2c 78  73 74 65 70 0d 08 20 21  |ADR R0,xstep.. !|
000017e0  45 51 55 44 20 26 45 43  45 30 30 31 30 30 20 5c  |EQUD &ECE00100 \|
000017f0  20 53 54 46 45 20 46 30  2c 5b 52 30 5d 0d 08 2a  | STFE F0,[R0]..*|
00001800  1f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001810  20 20 4d 4f 56 20 50 43  2c 52 31 34 0d 08 34 05  |  MOV PC,R14..4.|
00001820  3a 0d 08 3e 14 2e 70 6c  6f 74 73 74 61 74 20 45  |:..>..plotstat E|
00001830  51 55 44 20 30 0d 08 48  09 41 4c 49 47 4e 0d 08  |QUD 0..H.ALIGN..|
00001840  52 10 2e 70 72 65 76 20  45 51 55 44 20 30 0d 08  |R..prev EQUD 0..|
00001850  5c 09 41 4c 49 47 4e 0d  08 66 05 3a 0d 08 70 17  |\.ALIGN..f.:..p.|
00001860  5c 20 4d 41 49 4e 20 f0  20 43 4f 4e 54 52 4f 4c  |\ MAIN . CONTROL|
00001870  4c 45 52 0d 08 7a 05 3a  0d 08 84 25 2e 70 6c 6f  |LER..z.:...%.plo|
00001880  74 74 65 72 20 20 20 20  20 20 20 20 20 53 54 4d  |tter         STM|
00001890  46 44 20 52 31 33 21 2c  7b 52 31 34 7d 0d 08 8e  |FD R13!,{R14}...|
000018a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000018b0  20 20 4d 4f 56 20 52 39  2c 23 35 31 32 0d 08 98  |  MOV R9,#512...|
000018c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000018d0  20 20 41 44 52 20 52 32  2c 73 74 65 70 0d 08 a2  |  ADR R2,step...|
000018e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000018f0  20 20 53 54 52 20 52 39  2c 5b 52 32 5d 0d 08 ac  |  STR R9,[R2]...|
00001900  1e 2e 6e 65 77 73 74 65  70 20 20 20 20 20 20 20  |..newstep       |
00001910  20 20 4d 4f 56 20 52 30  2c 23 30 0d 08 b6 1e 20  |  MOV R0,#0.... |
00001920  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001930  4d 4f 56 20 52 31 2c 23  30 0d 08 c0 1e 20 20 20  |MOV R1,#0....   |
00001940  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 4f  |              MO|
00001950  56 20 52 37 2c 23 30 0d  08 ca 1e 20 20 20 20 20  |V R7,#0....     |
00001960  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00001970  52 38 2c 23 30 0d 08 d4  20 2e 70 6c 74 6c 6f 6f  |R8,#0... .pltloo|
00001980  70 20 20 20 20 20 20 20  20 20 41 44 52 20 52 32  |p         ADR R2|
00001990  2c 78 73 74 72 0d 08 de  20 20 20 20 20 20 20 20  |,xstr...        |
000019a0  20 20 20 20 20 20 20 20  20 20 53 54 52 20 52 30  |          STR R0|
000019b0  2c 5b 52 32 5d 0d 08 e8  20 20 20 20 20 20 20 20  |,[R2]...        |
000019c0  20 20 20 20 20 20 20 20  20 20 41 44 52 20 52 32  |          ADR R2|
000019d0  2c 79 73 74 72 0d 08 f2  20 20 20 20 20 20 20 20  |,ystr...        |
000019e0  20 20 20 20 20 20 20 20  20 20 53 54 52 20 52 31  |          STR R1|
000019f0  2c 5b 52 32 5d 0d 08 fc  1f 20 20 20 20 20 20 20  |,[R2]....       |
00001a00  20 20 20 20 20 20 20 20  20 20 80 20 52 32 2c 52  |          . R2,R|
00001a10  37 2c 23 31 0d 09 06 1e  20 20 20 20 20 20 20 20  |7,#1....        |
00001a20  20 20 20 20 20 20 20 20  20 43 4d 50 20 52 32 2c  |         CMP R2,|
00001a30  23 30 0d 09 10 20 20 20  20 20 20 20 20 20 20 20  |#0...           |
00001a40  20 20 20 20 20 20 20 42  4e 45 20 70 6c 6f 74 70  |       BNE plotp|
00001a50  69 78 0d 09 1a 1f 20 20  20 20 20 20 20 20 20 20  |ix....          |
00001a60  20 20 20 20 20 20 20 80  20 52 32 2c 52 38 2c 23  |       . R2,R8,#|
00001a70  31 0d 09 24 1e 20 20 20  20 20 20 20 20 20 20 20  |1..$.           |
00001a80  20 20 20 20 20 20 43 4d  50 20 52 32 2c 23 30 0d  |      CMP R2,#0.|
00001a90  09 2e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001aa0  20 20 20 20 42 45 51 20  70 6c 6f 74 74 65 64 0d  |    BEQ plotted.|
00001ab0  09 38 24 2e 70 6c 6f 74  70 69 78 20 20 20 20 20  |.8$.plotpix     |
00001ac0  20 20 20 20 41 44 52 20  52 32 2c 77 69 6d 70 73  |    ADR R2,wimps|
00001ad0  74 61 74 0d 09 42 20 20  20 20 20 20 20 20 20 20  |tat..B          |
00001ae0  20 20 20 20 20 20 20 20  4c 44 52 20 52 33 2c 5b  |        LDR R3,[|
00001af0  52 32 5d 0d 09 4c 21 20  20 20 20 20 20 20 20 20  |R2]..L!         |
00001b00  20 20 20 20 20 20 20 20  43 4d 50 20 52 33 2c 23  |        CMP R3,#|
00001b10  26 31 30 30 0d 09 56 21  20 20 20 20 20 20 20 20  |&100..V!        |
00001b20  20 20 20 20 20 20 20 20  20 42 45 51 20 70 6c 6f  |         BEQ plo|
00001b30  74 73 74 6f 70 0d 09 60  25 20 20 20 20 20 20 20  |tstop..`%       |
00001b40  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 33  |          MOV R3|
00001b50  2c 52 33 2c 41 53 4c 20  23 31 0d 09 6a 20 20 20  |,R3,ASL #1..j   |
00001b60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
00001b70  54 52 20 52 33 2c 5b 52  32 5d 0d 09 74 1e 20 20  |TR R3,[R2]..t.  |
00001b80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00001b90  4f 56 20 52 32 2c 52 31  0d 09 7e 1e 20 20 20 20  |OV R2,R1..~.    |
00001ba0  20 20 20 20 20 20 20 20  20 20 20 20 20 4d 4f 56  |             MOV|
00001bb0  20 52 31 2c 52 30 0d 09  88 1f 20 20 20 20 20 20  | R1,R0....      |
00001bc0  20 20 20 20 20 20 20 20  20 20 20 42 4c 20 6d 61  |           BL ma|
00001bd0  6e 64 70 69 78 0d 09 92  1d 20 20 20 20 20 20 20  |ndpix....       |
00001be0  20 20 20 20 20 20 20 20  20 20 42 4c 20 70 6f 69  |          BL poi|
00001bf0  6e 74 0d 09 9c 24 20 20  20 20 20 20 20 20 20 20  |nt...$          |
00001c00  20 20 20 20 20 20 20 41  44 52 20 52 30 2c 77 69  |       ADR R0,wi|
00001c10  6d 70 73 74 61 74 0d 09  a6 20 20 20 20 20 20 20  |mpstat...       |
00001c20  20 20 20 20 20 20 20 20  20 20 20 4c 44 52 20 52  |           LDR R|
00001c30  30 2c 5b 52 30 5d 0d 09  b0 1e 20 20 20 20 20 20  |0,[R0]....      |
00001c40  20 20 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |           CMP R|
00001c50  30 2c 23 30 0d 09 ba 21  20 20 20 20 20 20 20 20  |0,#0...!        |
00001c60  20 20 20 20 20 20 20 20  20 42 4e 45 20 70 6c 6f  |         BNE plo|
00001c70  74 73 74 6f 70 0d 09 c4  20 2e 70 6c 6f 74 74 65  |tstop... .plotte|
00001c80  64 62 20 20 20 20 20 20  20 20 41 44 52 20 52 32  |db        ADR R2|
00001c90  2c 78 73 74 72 0d 09 ce  20 20 20 20 20 20 20 20  |,xstr...        |
00001ca0  20 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 30  |          LDR R0|
00001cb0  2c 5b 52 32 5d 0d 09 d8  20 20 20 20 20 20 20 20  |,[R2]...        |
00001cc0  20 20 20 20 20 20 20 20  20 20 41 44 52 20 52 32  |          ADR R2|
00001cd0  2c 79 73 74 72 0d 09 e2  20 20 20 20 20 20 20 20  |,ystr...        |
00001ce0  20 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 31  |          LDR R1|
00001cf0  2c 5b 52 32 5d 0d 09 ec  20 20 20 20 20 20 20 20  |,[R2]...        |
00001d00  20 20 20 20 20 20 20 20  20 20 41 44 52 20 52 32  |          ADR R2|
00001d10  2c 73 74 65 70 0d 09 f6  20 20 20 20 20 20 20 20  |,step...        |
00001d20  20 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 39  |          LDR R9|
00001d30  2c 5b 52 32 5d 0d 0a 00  21 20 20 20 20 20 20 20  |,[R2]...!       |
00001d40  20 20 20 20 20 20 20 20  20 20 41 44 44 20 52 30  |          ADD R0|
00001d50  2c 52 30 2c 52 39 0d 0a  0a 21 20 20 20 20 20 20  |,R0,R9...!      |
00001d60  20 20 20 20 20 20 20 20  20 20 20 41 44 44 20 52  |           ADD R|
00001d70  37 2c 52 37 2c 23 31 0d  0a 14 21 20 20 20 20 20  |7,R7,#1...!     |
00001d80  20 20 20 20 20 20 20 20  20 20 20 20 43 4d 50 20  |            CMP |
00001d90  52 30 2c 23 31 30 32 34  0d 0a 1e 20 20 20 20 20  |R0,#1024...     |
00001da0  20 20 20 20 20 20 20 20  20 20 20 20 20 42 4e 45  |             BNE|
00001db0  20 70 6c 74 6c 6f 6f 70  0d 0a 28 1e 20 20 20 20  | pltloop..(.    |
00001dc0  20 20 20 20 20 20 20 20  20 20 20 20 20 4d 4f 56  |             MOV|
00001dd0  20 52 30 2c 23 30 0d 0a  32 1e 20 20 20 20 20 20  | R0,#0..2.      |
00001de0  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |           MOV R|
00001df0  37 2c 23 30 0d 0a 3c 1e  20 20 20 20 20 20 20 20  |7,#0..<.        |
00001e00  20 20 20 20 20 20 20 20  20 43 4d 50 20 52 39 2c  |         CMP R9,|
00001e10  23 33 0d 0a 46 21 20 20  20 20 20 20 20 20 20 20  |#3..F!          |
00001e20  20 20 20 20 20 20 20 42  43 53 20 6e 6f 74 66 69  |       BCS notfi|
00001e30  6e 61 6c 0d 0a 50 1e 20  20 20 20 20 20 20 20 20  |nal..P.         |
00001e40  20 20 20 20 20 20 20 20  4d 4f 56 20 52 39 2c 23  |        MOV R9,#|
00001e50  34 0d 0a 5a 21 2e 6e 6f  74 66 69 6e 61 6c 20 20  |4..Z!.notfinal  |
00001e60  20 20 20 20 20 20 41 44  44 20 52 31 2c 52 31 2c  |      ADD R1,R1,|
00001e70  52 39 0d 0a 64 21 20 20  20 20 20 20 20 20 20 20  |R9..d!          |
00001e80  20 20 20 20 20 20 20 41  44 44 20 52 38 2c 52 38  |       ADD R8,R8|
00001e90  2c 23 31 0d 0a 6e 21 20  20 20 20 20 20 20 20 20  |,#1..n!         |
00001ea0  20 20 20 20 20 20 20 20  43 4d 50 20 52 31 2c 23  |        CMP R1,#|
00001eb0  31 30 32 34 0d 0a 78 20  20 20 20 20 20 20 20 20  |1024..x         |
00001ec0  20 20 20 20 20 20 20 20  20 42 4e 45 20 70 6c 74  |         BNE plt|
00001ed0  6c 6f 6f 70 0d 0a 82 20  20 20 20 20 20 20 20 20  |loop...         |
00001ee0  20 20 20 20 20 20 20 20  20 4c 44 52 20 52 39 2c  |         LDR R9,|
00001ef0  5b 52 32 5d 0d 0a 8c 25  20 20 20 20 20 20 20 20  |[R2]...%        |
00001f00  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 39 2c  |         MOV R9,|
00001f10  52 39 2c 4c 53 52 20 23  31 0d 0a 96 20 20 20 20  |R9,LSR #1...    |
00001f20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 53 54  |              ST|
00001f30  52 20 52 39 2c 5b 52 32  5d 0d 0a a0 1e 20 20 20  |R R9,[R2]....   |
00001f40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
00001f50  50 20 52 39 2c 23 31 0d  0a aa 20 20 20 20 20 20  |P R9,#1...      |
00001f60  20 20 20 20 20 20 20 20  20 20 20 20 42 4e 45 20  |            BNE |
00001f70  6e 65 77 73 74 65 70 0d  0a b4 1e 20 20 20 20 20  |newstep....     |
00001f80  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00001f90  52 30 2c 23 30 0d 0a be  24 20 20 20 20 20 20 20  |R0,#0...$       |
00001fa0  20 20 20 20 20 20 20 20  20 20 4c 44 4d 46 44 20  |          LDMFD |
00001fb0  52 31 33 21 2c 7b 50 43  7d 0d 0a c8 24 2e 70 6c  |R13!,{PC}...$.pl|
00001fc0  6f 74 74 65 64 20 20 20  20 20 20 20 20 20 41 44  |otted         AD|
00001fd0  52 20 52 30 2c 77 69 6d  70 73 74 61 74 0d 0a d2  |R R0,wimpstat...|
00001fe0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001ff0  20 20 4c 44 52 20 52 31  2c 5b 52 30 5d 0d 0a dc  |  LDR R1,[R0]...|
00002000  1e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00002010  20 20 43 4d 50 20 52 31  2c 23 31 0d 0a e6 21 20  |  CMP R1,#1...! |
00002020  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002030  42 45 51 20 70 6c 6f 74  74 65 64 62 0d 0a f0 23  |BEQ plottedb...#|
00002040  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002050  20 53 57 49 20 22 4f 53  5f 4d 6f 75 73 65 22 0d  | SWI "OS_Mouse".|
00002060  0a fa 1e 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00002070  20 20 20 20 43 4d 50 20  52 32 2c 23 30 0d 0b 04  |    CMP R2,#0...|
00002080  21 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |!               |
00002090  20 20 42 45 51 20 70 6c  6f 74 74 65 64 62 0d 0b  |  BEQ plottedb..|
000020a0  0e 20 2e 70 6c 6f 74 73  74 6f 70 20 20 20 20 20  |. .plotstop     |
000020b0  20 20 20 41 44 52 20 52  30 2c 78 70 6e 73 0d 0b  |   ADR R0,xpns..|
000020c0  18 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
000020d0  20 20 20 53 54 52 20 52  37 2c 5b 52 30 5d 0d 0b  |   STR R7,[R0]..|
000020e0  22 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |"               |
000020f0  20 20 20 41 44 52 20 52  30 2c 79 70 6e 73 0d 0b  |   ADR R0,ypns..|
00002100  2c 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |,               |
00002110  20 20 20 53 54 52 20 52  38 2c 5b 52 30 5d 0d 0b  |   STR R8,[R0]..|
00002120  36 1e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |6.              |
00002130  20 20 20 4d 4f 56 20 52  30 2c 23 31 0d 0b 40 24  |   MOV R0,#1..@$|
00002140  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002150  20 4c 44 4d 46 44 20 52  31 33 21 2c 7b 50 43 7d  | LDMFD R13!,{PC}|
00002160  0d 0b 4a 05 3a 0d 0b 54  25 2e 63 6f 6e 74 70 6c  |..J.:..T%.contpl|
00002170  6f 74 20 20 20 20 20 20  20 20 53 54 4d 46 44 20  |ot        STMFD |
00002180  52 31 33 21 2c 7b 52 31  34 7d 0d 0b 5e 20 20 20  |R13!,{R14}..^   |
00002190  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
000021a0  44 52 20 52 30 2c 78 70  6e 73 0d 0b 68 20 20 20  |DR R0,xpns..h   |
000021b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
000021c0  44 52 20 52 37 2c 5b 52  30 5d 0d 0b 72 20 20 20  |DR R7,[R0]..r   |
000021d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
000021e0  44 52 20 52 30 2c 79 70  6e 73 0d 0b 7c 20 20 20  |DR R0,ypns..|   |
000021f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
00002200  44 52 20 52 38 2c 5b 52  30 5d 0d 0b 86 1f 20 20  |DR R8,[R0]....  |
00002210  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
00002220  20 70 6c 6f 74 74 65 64  62 0d 0b 90 05 3a 0d 0b  | plottedb....:..|
00002230  9a 1c 5c 20 53 43 52 45  45 4e 20 4d 45 4d 4f 52  |..\ SCREEN MEMOR|
00002240  59 20 48 41 4e 44 4c 49  4e 47 0d 0b a4 05 3a 0d  |Y HANDLING....:.|
00002250  0b ae 22 2e 70 6f 69 6e  74 20 20 20 20 20 20 20  |..".point       |
00002260  20 20 20 20 41 44 44 20  52 31 30 2c 52 30 2c 23  |    ADD R10,R0,#|
00002270  37 0d 0b b8 23 20 20 20  20 20 20 20 20 20 20 20  |7...#           |
00002280  20 20 20 20 20 20 80 20  52 31 30 2c 52 31 30 2c  |      . R10,R10,|
00002290  23 31 32 37 0d 0b c2 20  20 20 20 20 20 20 20 20  |#127...         |
000022a0  20 20 20 20 20 20 20 20  20 41 44 52 20 52 32 2c  |         ADR R2,|
000022b0  78 73 74 72 0d 0b cc 20  20 20 20 20 20 20 20 20  |xstr...         |
000022c0  20 20 20 20 20 20 20 20  20 4c 44 52 20 52 30 2c  |         LDR R0,|
000022d0  5b 52 32 5d 0d 0b d6 20  20 20 20 20 20 20 20 20  |[R2]...         |
000022e0  20 20 20 20 20 20 20 20  20 41 44 52 20 52 32 2c  |         ADR R2,|
000022f0  79 73 74 72 0d 0b e0 20  20 20 20 20 20 20 20 20  |ystr...         |
00002300  20 20 20 20 20 20 20 20  20 4c 44 52 20 52 31 2c  |         LDR R1,|
00002310  5b 52 32 5d 0d 0b ea 22  20 20 20 20 20 20 20 20  |[R2]..."        |
00002320  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 31 31  |         MOV R11|
00002330  2c 23 26 32 38 30 0d 0b  f4 25 20 20 20 20 20 20  |,#&280...%      |
00002340  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |           MOV R|
00002350  30 2c 52 30 2c 4c 53 52  20 23 31 0d 0b fe 25 20  |0,R0,LSR #1...% |
00002360  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002370  4d 4f 56 20 52 31 2c 52  31 2c 4c 53 52 20 23 32  |MOV R1,R1,LSR #2|
00002380  0d 0c 08 22 20 20 20 20  20 20 20 20 20 20 20 20  |..."            |
00002390  20 20 20 20 20 53 55 42  20 52 30 2c 52 31 31 2c  |     SUB R0,R11,|
000023a0  52 30 0d 0c 12 25 20 20  20 20 20 20 20 20 20 20  |R0...%          |
000023b0  20 20 20 20 20 20 20 41  44 52 20 52 31 31 2c 77  |       ADR R11,w|
000023c0  69 6d 70 73 74 61 74 0d  0c 1c 22 20 20 20 20 20  |impstat..."     |
000023d0  20 20 20 20 20 20 20 20  20 20 20 20 4c 44 52 20  |            LDR |
000023e0  52 31 31 2c 5b 52 31 31  5d 0d 0c 26 1f 20 20 20  |R11,[R11]..&.   |
000023f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
00002400  50 20 52 31 31 2c 23 30  0d 0c 30 25 20 20 20 20  |P R11,#0..0%    |
00002410  20 20 20 20 20 20 20 20  20 20 20 20 20 ec 51 20  |             .Q |
00002420  52 31 31 2c 23 26 32 30  30 30 30 30 30 0d 0c 3a  |R11,#&2000000..:|
00002430  25 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |%               |
00002440  20 20 41 44 52 4e 45 20  52 31 31 2c 73 63 72 65  |  ADRNE R11,scre|
00002450  61 64 0d 0c 44 24 20 20  20 20 20 20 20 20 20 20  |ad..D$          |
00002460  20 20 20 20 20 20 20 4c  44 52 4e 45 20 52 31 31  |       LDRNE R11|
00002470  2c 5b 52 31 31 5d 0d 0c  4e 2a 20 20 20 20 20 20  |,[R11]..N*      |
00002480  20 20 20 20 20 20 20 20  20 20 20 41 44 44 4e 45  |           ADDNE|
00002490  20 52 31 31 2c 52 31 31  2c 23 26 32 38 30 30 30  | R11,R11,#&28000|
000024a0  0d 0c 58 23 20 20 20 20  20 20 20 20 20 20 20 20  |..X#            |
000024b0  20 20 20 20 20 53 55 42  20 52 31 31 2c 52 31 31  |     SUB R11,R11|
000024c0  2c 52 30 0d 0c 62 22 20  20 20 20 20 20 20 20 20  |,R0..b"         |
000024d0  20 20 20 20 20 20 20 20  4d 4f 56 20 52 31 32 2c  |        MOV R12,|
000024e0  23 26 32 38 30 0d 0c 6c  22 20 20 20 20 20 20 20  |#&280..l"       |
000024f0  20 20 20 20 20 20 20 20  20 20 4d 55 4c 20 52 32  |          MUL R2|
00002500  2c 52 31 2c 52 31 32 0d  0c 76 23 20 20 20 20 20  |,R1,R12..v#     |
00002510  20 20 20 20 20 20 20 20  20 20 20 20 53 55 42 20  |            SUB |
00002520  52 31 31 2c 52 31 31 2c  52 32 0d 0c 80 20 20 20  |R11,R11,R2...   |
00002530  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
00002540  44 52 20 52 30 2c 73 74  65 70 0d 0c 8a 20 20 20  |DR R0,step...   |
00002550  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
00002560  44 52 20 52 32 2c 5b 52  30 5d 0d 0c 94 1e 20 20  |DR R2,[R0]....  |
00002570  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00002580  4f 56 20 52 30 2c 23 30  0d 0c 9e 1e 20 20 20 20  |OV R0,#0....    |
00002590  20 20 20 20 20 20 20 20  20 20 20 20 20 4d 4f 56  |             MOV|
000025a0  20 52 31 2c 23 30 0d 0c  a8 25 2e 73 71 75 70 6c  | R1,#0...%.squpl|
000025b0  6f 70 20 20 20 20 20 20  20 20 20 4c 44 52 42 20  |op         LDRB |
000025c0  52 33 2c 5b 52 31 31 2c  52 30 5d 0d 0c b2 21 20  |R3,[R11,R0]...! |
000025d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000025e0  80 20 52 33 2c 52 33 2c  23 31 32 38 0d 0c bc 22  |. R3,R3,#128..."|
000025f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002600  20 41 44 44 20 52 33 2c  52 33 2c 52 31 30 0d 0c  | ADD R3,R3,R10..|
00002610  c6 25 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.%              |
00002620  20 20 20 53 54 52 42 20  52 33 2c 5b 52 31 31 2c  |   STRB R3,[R11,|
00002630  52 30 5d 0d 0c d0 21 20  20 20 20 20 20 20 20 20  |R0]...!         |
00002640  20 20 20 20 20 20 20 20  41 44 44 20 52 30 2c 52  |        ADD R0,R|
00002650  30 2c 23 31 0d 0c da 25  20 20 20 20 20 20 20 20  |0,#1...%        |
00002660  20 20 20 20 20 20 20 20  20 43 4d 50 20 52 30 2c  |         CMP R0,|
00002670  52 32 2c 4c 53 52 20 23  31 0d 0c e4 20 20 20 20  |R2,LSR #1...    |
00002680  20 20 20 20 20 20 20 20  20 20 20 20 20 20 42 43  |              BC|
00002690  43 20 73 71 75 70 6c 6f  70 0d 0c ee 1e 20 20 20  |C squplop....   |
000026a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 4f  |              MO|
000026b0  56 20 52 30 2c 23 30 0d  0c f8 26 20 20 20 20 20  |V R0,#0...&     |
000026c0  20 20 20 20 20 20 20 20  20 20 20 20 53 55 42 20  |            SUB |
000026d0  52 31 31 2c 52 31 31 2c  23 26 32 38 30 0d 0d 02  |R11,R11,#&280...|
000026e0  21 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |!               |
000026f0  20 20 41 44 44 20 52 31  2c 52 31 2c 23 31 0d 0d  |  ADD R1,R1,#1..|
00002700  0c 25 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.%              |
00002710  20 20 20 43 4d 50 20 52  31 2c 52 32 2c 4c 53 52  |   CMP R1,R2,LSR|
00002720  20 23 32 0d 0d 16 20 20  20 20 20 20 20 20 20 20  | #2...          |
00002730  20 20 20 20 20 20 20 20  42 43 43 20 73 71 75 70  |        BCC squp|
00002740  6c 6f 70 0d 0d 20 1f 20  20 20 20 20 20 20 20 20  |lop.. .         |
00002750  20 20 20 20 20 20 20 20  4d 4f 56 20 50 43 2c 52  |        MOV PC,R|
00002760  31 34 0d 0d 2a 05 3a 0d  0d 34 21 2e 6d 6f 75 73  |14..*.:..4!.mous|
00002770  65 62 6f 78 20 20 20 20  20 20 20 20 41 44 52 20  |ebox        ADR |
00002780  52 30 2c 78 62 6f 78 61  0d 0d 3e 20 20 20 20 20  |R0,xboxa..>     |
00002790  20 20 20 20 20 20 20 20  20 20 20 20 20 4c 44 52  |             LDR|
000027a0  20 52 30 2c 5b 52 30 5d  0d 0d 48 21 20 20 20 20  | R0,[R0]..H!    |
000027b0  20 20 20 20 20 20 20 20  20 20 20 20 20 41 44 52  |             ADR|
000027c0  20 52 31 2c 78 62 6f 78  62 0d 0d 52 20 20 20 20  | R1,xboxb..R    |
000027d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
000027e0  52 20 52 31 2c 5b 52 31  5d 0d 0d 5c 1e 20 20 20  |R R1,[R1]..\.   |
000027f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
00002800  50 20 52 30 2c 52 31 0d  0d 66 20 20 20 20 20 20  |P R0,R1..f      |
00002810  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00002820  53 20 52 32 2c 52 30 0d  0d 70 20 20 20 20 20 20  |S R2,R0..p      |
00002830  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00002840  53 20 52 30 2c 52 31 0d  0d 7a 20 20 20 20 20 20  |S R0,R1..z      |
00002850  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00002860  53 20 52 31 2c 52 32 0d  0d 84 21 20 20 20 20 20  |S R1,R2...!     |
00002870  20 20 20 20 20 20 20 20  20 20 20 20 41 44 52 20  |            ADR |
00002880  52 32 2c 79 62 6f 78 61  0d 0d 8e 20 20 20 20 20  |R2,yboxa...     |
00002890  20 20 20 20 20 20 20 20  20 20 20 20 20 4c 44 52  |             LDR|
000028a0  20 52 32 2c 5b 52 32 5d  0d 0d 98 21 20 20 20 20  | R2,[R2]...!    |
000028b0  20 20 20 20 20 20 20 20  20 20 20 20 20 41 44 52  |             ADR|
000028c0  20 52 33 2c 79 62 6f 78  62 0d 0d a2 20 20 20 20  | R3,yboxb...    |
000028d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
000028e0  52 20 52 33 2c 5b 52 33  5d 0d 0d ac 1e 20 20 20  |R R3,[R3]....   |
000028f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
00002900  50 20 52 32 2c 52 33 0d  0d b6 20 20 20 20 20 20  |P R2,R3...      |
00002910  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00002920  53 20 52 34 2c 52 32 0d  0d c0 20 20 20 20 20 20  |S R4,R2...      |
00002930  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00002940  53 20 52 32 2c 52 33 0d  0d ca 20 20 20 20 20 20  |S R2,R3...      |
00002950  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00002960  53 20 52 33 2c 52 34 0d  0d d4 22 20 20 20 20 20  |S R3,R4..."     |
00002970  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00002980  52 31 31 2c 23 26 32 38  30 0d 0d de 25 20 20 20  |R11,#&280...%   |
00002990  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 4f  |              MO|
000029a0  56 20 52 34 2c 52 30 2c  4c 53 52 20 23 31 0d 0d  |V R4,R0,LSR #1..|
000029b0  e8 25 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.%              |
000029c0  20 20 20 4d 4f 56 20 52  35 2c 52 32 2c 4c 53 52  |   MOV R5,R2,LSR|
000029d0  20 23 32 0d 0d f2 22 20  20 20 20 20 20 20 20 20  | #2..."         |
000029e0  20 20 20 20 20 20 20 20  53 55 42 20 52 34 2c 52  |        SUB R4,R|
000029f0  31 31 2c 52 34 0d 0d fc  26 20 20 20 20 20 20 20  |11,R4...&       |
00002a00  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 31  |          MOV R1|
00002a10  31 2c 23 26 32 30 30 30  30 30 30 0d 0e 06 23 20  |1,#&2000000...# |
00002a20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002a30  53 55 42 20 52 31 31 2c  52 31 31 2c 52 34 0d 0e  |SUB R11,R11,R4..|
00002a40  10 22 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |."              |
00002a50  20 20 20 4d 4f 56 20 52  31 32 2c 23 26 32 38 30  |   MOV R12,#&280|
00002a60  0d 0e 1a 22 20 20 20 20  20 20 20 20 20 20 20 20  |..."            |
00002a70  20 20 20 20 20 4d 55 4c  20 52 36 2c 52 35 2c 52  |     MUL R6,R5,R|
00002a80  31 32 0d 0e 24 23 20 20  20 20 20 20 20 20 20 20  |12..$#          |
00002a90  20 20 20 20 20 20 20 53  55 42 20 52 31 31 2c 52  |       SUB R11,R|
00002aa0  31 31 2c 52 36 0d 0e 2e  1e 20 20 20 20 20 20 20  |11,R6....       |
00002ab0  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 34  |          MOV R4|
00002ac0  2c 23 30 0d 0e 38 1e 20  20 20 20 20 20 20 20 20  |,#0..8.         |
00002ad0  20 20 20 20 20 20 20 20  4d 4f 56 20 52 35 2c 52  |        MOV R5,R|
00002ae0  31 0d 0e 42 21 20 20 20  20 20 20 20 20 20 20 20  |1..B!           |
00002af0  20 20 20 20 20 20 53 55  42 20 52 35 2c 52 35 2c  |      SUB R5,R5,|
00002b00  52 30 0d 0e 4c 25 20 20  20 20 20 20 20 20 20 20  |R0..L%          |
00002b10  20 20 20 20 20 20 20 4d  4f 56 20 52 35 2c 52 35  |       MOV R5,R5|
00002b20  2c 4c 53 52 20 23 31 0d  0e 56 25 2e 78 62 6f 74  |,LSR #1..V%.xbot|
00002b30  6c 6f 70 20 20 20 20 20  20 20 20 20 4c 44 52 42  |lop         LDRB|
00002b40  20 52 36 2c 5b 52 31 31  2c 52 34 5d 0d 0e 60 21  | R6,[R11,R4]..`!|
00002b50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002b60  20 82 20 52 36 2c 52 36  2c 23 31 32 38 0d 0e 6a  | . R6,R6,#128..j|
00002b70  25 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |%               |
00002b80  20 20 53 54 52 42 20 52  36 2c 5b 52 31 31 2c 52  |  STRB R6,[R11,R|
00002b90  34 5d 0d 0e 74 21 20 20  20 20 20 20 20 20 20 20  |4]..t!          |
00002ba0  20 20 20 20 20 20 20 41  44 44 20 52 34 2c 52 34  |       ADD R4,R4|
00002bb0  2c 23 31 0d 0e 7e 1e 20  20 20 20 20 20 20 20 20  |,#1..~.         |
00002bc0  20 20 20 20 20 20 20 20  43 4d 50 20 52 34 2c 52  |        CMP R4,R|
00002bd0  35 0d 0e 88 20 20 20 20  20 20 20 20 20 20 20 20  |5...            |
00002be0  20 20 20 20 20 20 42 43  43 20 78 62 6f 74 6c 6f  |      BCC xbotlo|
00002bf0  70 0d 0e 92 1e 20 20 20  20 20 20 20 20 20 20 20  |p....           |
00002c00  20 20 20 20 20 20 4d 4f  56 20 52 36 2c 52 33 0d  |      MOV R6,R3.|
00002c10  0e 9c 21 20 20 20 20 20  20 20 20 20 20 20 20 20  |..!             |
00002c20  20 20 20 20 53 55 42 20  52 36 2c 52 36 2c 52 32  |    SUB R6,R6,R2|
00002c30  0d 0e a6 25 20 20 20 20  20 20 20 20 20 20 20 20  |...%            |
00002c40  20 20 20 20 20 4d 4f 56  20 52 36 2c 52 36 2c 4c  |     MOV R6,R6,L|
00002c50  53 52 20 23 32 0d 0e b0  21 20 20 20 20 20 20 20  |SR #2...!       |
00002c60  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 34  |          MOV R4|
00002c70  2c 23 26 32 38 30 0d 0e  ba 21 20 20 20 20 20 20  |,#&280...!      |
00002c80  20 20 20 20 20 20 20 20  20 20 20 4d 55 4c 20 52  |           MUL R|
00002c90  37 2c 52 36 2c 52 34 0d  0e c4 1e 20 20 20 20 20  |7,R6,R4....     |
00002ca0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00002cb0  52 36 2c 52 37 0d 0e ce  1e 20 20 20 20 20 20 20  |R6,R7....       |
00002cc0  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 34  |          MOV R4|
00002cd0  2c 23 30 0d 0e d8 26 2e  79 6c 65 66 74 6c 6f 70  |,#0...&.yleftlop|
00002ce0  20 20 20 20 20 20 20 20  4c 44 52 42 20 52 37 2c  |        LDRB R7,|
00002cf0  5b 52 31 31 2c 2d 52 34  5d 0d 0e e2 21 20 20 20  |[R11,-R4]...!   |
00002d00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 82 20  |              . |
00002d10  52 37 2c 52 37 2c 23 31  32 38 0d 0e ec 26 20 20  |R7,R7,#128...&  |
00002d20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
00002d30  54 52 42 20 52 37 2c 5b  52 31 31 2c 2d 52 34 5d  |TRB R7,[R11,-R4]|
00002d40  0d 0e f6 24 20 20 20 20  20 20 20 20 20 20 20 20  |...$            |
00002d50  20 20 20 20 20 41 44 44  20 52 34 2c 52 34 2c 23  |     ADD R4,R4,#|
00002d60  26 32 38 30 0d 0f 00 1e  20 20 20 20 20 20 20 20  |&280....        |
00002d70  20 20 20 20 20 20 20 20  20 43 4d 50 20 52 34 2c  |         CMP R4,|
00002d80  52 36 0d 0f 0a 21 20 20  20 20 20 20 20 20 20 20  |R6...!          |
00002d90  20 20 20 20 20 20 20 42  43 43 20 79 6c 65 66 74  |       BCC yleft|
00002da0  6c 6f 70 0d 0f 14 24 20  20 20 20 20 20 20 20 20  |lop...$         |
00002db0  20 20 20 20 20 20 20 20  52 53 42 20 52 34 2c 52  |        RSB R4,R|
00002dc0  35 2c 23 26 32 38 30 0d  0f 1e 22 20 20 20 20 20  |5,#&280..."     |
00002dd0  20 20 20 20 20 20 20 20  20 20 20 20 5c 53 55 42  |            \SUB|
00002de0  20 52 36 2c 52 36 2c 52  35 0d 0f 28 26 2e 79 72  | R6,R6,R5..(&.yr|
00002df0  69 67 68 74 6c 6f 70 20  20 20 20 20 20 20 4c 44  |ightlop       LD|
00002e00  52 42 20 52 37 2c 5b 52  31 31 2c 2d 52 34 5d 0d  |RB R7,[R11,-R4].|
00002e10  0f 32 21 20 20 20 20 20  20 20 20 20 20 20 20 20  |.2!             |
00002e20  20 20 20 20 82 20 52 37  2c 52 37 2c 23 31 32 38  |    . R7,R7,#128|
00002e30  0d 0f 3c 26 20 20 20 20  20 20 20 20 20 20 20 20  |..<&            |
00002e40  20 20 20 20 20 53 54 52  42 20 52 37 2c 5b 52 31  |     STRB R7,[R1|
00002e50  31 2c 2d 52 34 5d 0d 0f  46 24 20 20 20 20 20 20  |1,-R4]..F$      |
00002e60  20 20 20 20 20 20 20 20  20 20 20 41 44 44 20 52  |           ADD R|
00002e70  34 2c 52 34 2c 23 26 32  38 30 0d 0f 50 1e 20 20  |4,R4,#&280..P.  |
00002e80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 43  |               C|
00002e90  4d 50 20 52 34 2c 52 36  0d 0f 5a 22 20 20 20 20  |MP R4,R6..Z"    |
00002ea0  20 20 20 20 20 20 20 20  20 20 20 20 20 42 43 43  |             BCC|
00002eb0  20 79 72 69 67 68 74 6c  6f 70 0d 0f 64 22 20 20  | yrightlop..d"  |
00002ec0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 5c  |               \|
00002ed0  41 44 44 20 52 36 2c 52  36 2c 52 35 0d 0f 6e 23  |ADD R6,R6,R5..n#|
00002ee0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002ef0  20 53 55 42 20 52 31 31  2c 52 31 31 2c 52 36 0d  | SUB R11,R11,R6.|
00002f00  0f 78 1e 20 20 20 20 20  20 20 20 20 20 20 20 20  |.x.             |
00002f10  20 20 20 20 4d 4f 56 20  52 34 2c 23 30 0d 0f 82  |    MOV R4,#0...|
00002f20  25 2e 78 74 6f 70 6c 6f  70 20 20 20 20 20 20 20  |%.xtoplop       |
00002f30  20 20 4c 44 52 42 20 52  36 2c 5b 52 31 31 2c 52  |  LDRB R6,[R11,R|
00002f40  34 5d 0d 0f 8c 21 20 20  20 20 20 20 20 20 20 20  |4]...!          |
00002f50  20 20 20 20 20 20 20 82  20 52 36 2c 52 36 2c 23  |       . R6,R6,#|
00002f60  31 32 38 0d 0f 96 25 20  20 20 20 20 20 20 20 20  |128...%         |
00002f70  20 20 20 20 20 20 20 20  53 54 52 42 20 52 36 2c  |        STRB R6,|
00002f80  5b 52 31 31 2c 52 34 5d  0d 0f a0 21 20 20 20 20  |[R11,R4]...!    |
00002f90  20 20 20 20 20 20 20 20  20 20 20 20 20 41 44 44  |             ADD|
00002fa0  20 52 34 2c 52 34 2c 23  31 0d 0f aa 1e 20 20 20  | R4,R4,#1....   |
00002fb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
00002fc0  50 20 52 34 2c 52 35 0d  0f b4 20 20 20 20 20 20  |P R4,R5...      |
00002fd0  20 20 20 20 20 20 20 20  20 20 20 20 42 43 43 20  |            BCC |
00002fe0  78 74 6f 70 6c 6f 70 0d  0f be 1f 20 20 20 20 20  |xtoplop....     |
00002ff0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00003000  50 43 2c 52 31 34 0d 0f  c8 05 3a 0d 0f d2 22 2e  |PC,R14....:...".|
00003010  73 61 76 65 73 63 72 20  20 20 20 20 20 20 20 20  |savescr         |
00003020  41 44 52 20 52 31 2c 73  63 72 6d 65 6d 0d 0f dc  |ADR R1,scrmem...|
00003030  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003040  20 20 4c 44 52 20 52 30  2c 5b 52 31 5d 0d 0f e6  |  LDR R0,[R1]...|
00003050  22 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |"               |
00003060  20 20 41 44 52 20 52 31  2c 73 63 72 65 61 64 0d  |  ADR R1,scread.|
00003070  0f f0 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00003080  20 20 20 20 4c 44 52 20  52 31 2c 5b 52 31 5d 0d  |    LDR R1,[R1].|
00003090  0f fa 1e 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
000030a0  20 20 20 20 4d 4f 56 20  52 32 2c 23 30 0d 10 04  |    MOV R2,#0...|
000030b0  23 2e 73 61 76 6c 6f 70  20 20 20 20 20 20 20 20  |#.savlop        |
000030c0  20 20 4c 44 52 20 52 33  2c 5b 52 30 2c 52 32 5d  |  LDR R3,[R0,R2]|
000030d0  0d 10 0e 23 20 20 20 20  20 20 20 20 20 20 20 20  |...#            |
000030e0  20 20 20 20 20 53 54 52  20 52 33 2c 5b 52 31 2c  |     STR R3,[R1,|
000030f0  52 32 5d 0d 10 18 21 20  20 20 20 20 20 20 20 20  |R2]...!         |
00003100  20 20 20 20 20 20 20 20  41 44 44 20 52 32 2c 52  |        ADD R2,R|
00003110  32 2c 23 34 0d 10 22 23  20 20 20 20 20 20 20 20  |2,#4.."#        |
00003120  20 20 20 20 20 20 20 20  20 43 4d 50 20 52 32 2c  |         CMP R2,|
00003130  23 26 32 38 30 30 30 0d  10 2c 1f 20 20 20 20 20  |#&28000..,.     |
00003140  20 20 20 20 20 20 20 20  20 20 20 20 42 4e 45 20  |            BNE |
00003150  73 61 76 6c 6f 70 0d 10  36 1f 20 20 20 20 20 20  |savlop..6.      |
00003160  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 50  |           MOV P|
00003170  43 2c 52 31 34 0d 10 40  22 2e 6c 6f 61 64 73 63  |C,R14..@".loadsc|
00003180  72 20 20 20 20 20 20 20  20 20 41 44 52 20 52 30  |r         ADR R0|
00003190  2c 73 63 72 6d 65 6d 0d  10 4a 20 20 20 20 20 20  |,scrmem..J      |
000031a0  20 20 20 20 20 20 20 20  20 20 20 20 4c 44 52 20  |            LDR |
000031b0  52 31 2c 5b 52 30 5d 0d  10 54 22 20 20 20 20 20  |R1,[R0]..T"     |
000031c0  20 20 20 20 20 20 20 20  20 20 20 20 41 44 52 20  |            ADR |
000031d0  52 30 2c 73 63 72 65 61  64 0d 10 5e 20 20 20 20  |R0,scread..^    |
000031e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
000031f0  52 20 52 30 2c 5b 52 30  5d 0d 10 68 1e 20 20 20  |R R0,[R0]..h.   |
00003200  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 4f  |              MO|
00003210  56 20 52 32 2c 23 30 0d  10 72 1d 20 20 20 20 20  |V R2,#0..r.     |
00003220  20 20 20 20 20 20 20 20  20 20 20 20 42 20 73 61  |            B sa|
00003230  76 6c 6f 70 0d 10 7c 05  3a 0d 10 86 1c 2e 78 6d  |vlop..|.:.....xm|
00003240  69 6e 20 45 51 55 44 20  30 3a 45 51 55 44 30 3a  |in EQUD 0:EQUD0:|
00003250  45 51 55 44 30 0d 10 90  1c 2e 79 6d 69 6e 20 45  |EQUD0.....ymin E|
00003260  51 55 44 20 30 3a 45 51  55 44 30 3a 45 51 55 44  |QUD 0:EQUD0:EQUD|
00003270  30 0d 10 9a 1d 2e 78 73  74 65 70 20 45 51 55 44  |0.....xstep EQUD|
00003280  20 30 3a 45 51 55 44 30  3a 45 51 55 44 30 0d 10  | 0:EQUD0:EQUD0..|
00003290  a4 1d 2e 79 73 74 65 70  20 45 51 55 44 20 30 3a  |...ystep EQUD 0:|
000032a0  45 51 55 44 30 3a 45 51  55 44 30 0d 10 ae 19 2e  |EQUD0:EQUD0.....|
000032b0  73 63 72 6d 65 6d 20 45  51 55 44 20 26 31 46 44  |scrmem EQUD &1FD|
000032c0  38 30 30 30 0d 10 b8 17  2e 73 63 72 65 61 64 20  |8000.....scread |
000032d0  45 51 55 44 20 73 63 72  65 65 6e 0d 10 c2 12 2e  |EQUD screen.....|
000032e0  6d 61 78 69 74 20 45 51  55 44 20 32 35 0d 10 cc  |maxit EQUD 25...|
000032f0  10 2e 78 73 74 72 20 45  51 55 44 20 30 0d 10 d6  |..xstr EQUD 0...|
00003300  10 2e 79 73 74 72 20 45  51 55 44 20 30 0d 10 e0  |..ystr EQUD 0...|
00003310  10 2e 78 70 6e 73 20 45  51 55 44 20 30 0d 10 ea  |..xpns EQUD 0...|
00003320  10 2e 79 70 6e 73 20 45  51 55 44 20 30 0d 10 f4  |..ypns EQUD 0...|
00003330  10 2e 73 74 65 70 20 45  51 55 44 20 30 0d 10 fe  |..step EQUD 0...|
00003340  11 2e 78 62 6f 78 61 20  45 51 55 44 20 30 0d 11  |..xboxa EQUD 0..|
00003350  08 11 2e 78 62 6f 78 62  20 45 51 55 44 20 30 0d  |...xboxb EQUD 0.|
00003360  11 12 11 2e 79 62 6f 78  61 20 45 51 55 44 20 30  |....yboxa EQUD 0|
00003370  0d 11 1c 11 2e 79 62 6f  78 62 20 45 51 55 44 20  |.....yboxb EQUD |
00003380  30 0d 11 26 05 3a 0d 11  30 1d 2e 73 74 61 72 74  |0..&.:..0..start|
00003390  75 70 20 53 54 4d 46 44  20 52 31 33 21 2c 7b 52  |up STMFD R13!,{R|
000033a0  31 34 7d 0d 11 3a 17 20  20 20 20 20 20 20 20 20  |14}..:.         |
000033b0  53 57 49 20 32 35 36 2b  32 32 0d 11 44 17 20 20  |SWI 256+22..D.  |
000033c0  20 20 20 20 20 20 20 53  57 49 20 32 35 36 2b 31  |       SWI 256+1|
000033d0  35 0d 11 4e 18 20 20 20  20 20 20 20 20 20 4d 4f  |5..N.         MO|
000033e0  56 20 52 30 2c 23 31 30  36 0d 11 58 16 20 20 20  |V R0,#106..X.   |
000033f0  20 20 20 20 20 20 4d 4f  56 20 52 31 2c 23 31 0d  |      MOV R1,#1.|
00003400  11 62 1a 20 20 20 20 20  20 20 20 20 53 57 49 20  |.b.         SWI |
00003410  22 4f 53 5f 42 79 74 65  22 0d 11 6c 17 20 20 20  |"OS_Byte"..l.   |
00003420  20 20 20 20 20 20 53 57  49 20 32 35 36 2b 32 33  |      SWI 256+23|
00003430  0d 11 76 16 20 20 20 20  20 20 20 20 20 53 57 49  |..v.         SWI|
00003440  20 32 35 36 2b 31 0d 11  80 14 20 20 20 20 20 20  | 256+1....      |
00003450  20 20 20 53 57 49 20 32  35 36 0d 11 8a 14 20 20  |   SWI 256....  |
00003460  20 20 20 20 20 20 20 53  57 49 20 32 35 36 0d 11  |       SWI 256..|
00003470  94 14 20 20 20 20 20 20  20 20 20 53 57 49 20 32  |..         SWI 2|
00003480  35 36 0d 11 9e 14 20 20  20 20 20 20 20 20 20 53  |56....         S|
00003490  57 49 20 32 35 36 0d 11  a8 14 20 20 20 20 20 20  |WI 256....      |
000034a0  20 20 20 53 57 49 20 32  35 36 0d 11 b2 14 20 20  |   SWI 256....  |
000034b0  20 20 20 20 20 20 20 53  57 49 20 32 35 36 0d 11  |       SWI 256..|
000034c0  bc 14 20 20 20 20 20 20  20 20 20 53 57 49 20 32  |..         SWI 2|
000034d0  35 36 0d 11 c6 14 20 20  20 20 20 20 20 20 20 53  |56....         S|
000034e0  57 49 20 32 35 36 0d 11  d0 1b 20 20 20 20 20 20  |WI 256....      |
000034f0  20 20 20 41 44 52 20 52  30 2c 73 63 68 6f 6f 73  |   ADR R0,schoos|
00003500  65 0d 11 da 19 20 20 20  20 20 20 20 20 20 53 57  |e....         SW|
00003510  49 20 22 4f 53 5f 43 4c  49 22 0d 11 e4 18 20 20  |I "OS_CLI"....  |
00003520  20 20 20 20 20 20 20 4d  4f 56 20 52 30 2c 23 26  |       MOV R0,#&|
00003530  45 44 0d 11 ee 19 20 20  20 20 20 20 20 20 20 4d  |ED....         M|
00003540  4f 56 20 52 31 2c 23 31  30 32 34 0d 11 f8 19 20  |OV R1,#1024.... |
00003550  20 20 20 20 20 20 20 20  41 44 52 20 52 32 2c 70  |        ADR R2,p|
00003560  6c 6f 74 79 0d 12 02 18  20 20 20 20 20 20 20 20  |loty....        |
00003570  20 4c 44 52 20 52 32 2c  5b 52 32 5d 0d 12 0c 1a  | LDR R2,[R2]....|
00003580  20 20 20 20 20 20 20 20  20 53 57 49 20 22 4f 53  |         SWI "OS|
00003590  5f 50 6c 6f 74 22 0d 12  16 1c 20 20 20 20 20 20  |_Plot"....      |
000035a0  20 20 20 53 57 49 20 22  4f 53 5f 57 72 69 74 65  |   SWI "OS_Write|
000035b0  53 22 0d 12 20 29 20 20  20 20 20 20 20 20 20 45  |S".. )         E|
000035c0  51 55 42 31 37 3a 45 51  55 42 32 35 35 3a 45 51  |QUB17:EQUB255:EQ|
000035d0  55 42 31 37 3a 45 51 55  42 33 32 0d 12 2a 38 20  |UB17:EQUB32..*8 |
000035e0  20 20 20 20 20 20 20 20  45 51 55 42 33 31 3a 45  |        EQUB31:E|
000035f0  51 55 42 36 34 3a 45 51  55 42 31 30 3a 45 51 55  |QUB64:EQUB10:EQU|
00003600  53 22 5a 6f 6f 6d 20 49  6e 20 20 20 20 20 20 20  |S"Zoom In       |
00003610  20 20 22 0d 12 34 38 20  20 20 20 20 20 20 20 20  |  "..48         |
00003620  45 51 55 42 33 31 3a 45  51 55 42 36 34 3a 45 51  |EQUB31:EQUB64:EQ|
00003630  55 42 31 32 3a 45 51 55  53 22 52 65 73 65 74 20  |UB12:EQUS"Reset |
00003640  20 20 20 20 20 20 20 20  20 20 22 0d 12 3e 19 20  |          "..>. |
00003650  20 20 20 20 20 20 20 20  45 51 55 42 31 37 3a 45  |        EQUB17:E|
00003660  51 55 42 38 0d 12 48 38  20 20 20 20 20 20 20 20  |QUB8..H8        |
00003670  20 45 51 55 42 33 31 3a  45 51 55 42 36 34 3a 45  | EQUB31:EQUB64:E|
00003680  51 55 42 31 36 3a 45 51  55 53 22 49 74 65 72 61  |QUB16:EQUS"Itera|
00003690  74 69 6f 6e 73 20 20 20  20 20 20 22 0d 12 52 19  |tions      "..R.|
000036a0  20 20 20 20 20 20 20 20  20 45 51 55 42 31 37 3a  |         EQUB17:|
000036b0  45 51 55 42 36 0d 12 5c  38 20 20 20 20 20 20 20  |EQUB6..\8       |
000036c0  20 20 45 51 55 42 33 31  3a 45 51 55 42 36 34 3a  |  EQUB31:EQUB64:|
000036d0  45 51 55 42 32 38 3a 45  51 55 53 22 44 65 73 6b  |EQUB28:EQUS"Desk|
000036e0  74 6f 70 20 20 20 20 20  20 20 20 20 22 0d 12 66  |top         "..f|
000036f0  38 20 20 20 20 20 20 20  20 20 45 51 55 42 33 31  |8         EQUB31|
00003700  3a 45 51 55 42 36 34 3a  45 51 55 42 33 30 3a 45  |:EQUB64:EQUB30:E|
00003710  51 55 53 22 51 75 69 74  20 50 72 6f 67 72 61 6d  |QUS"Quit Program|
00003720  20 20 20 20 22 0d 12 70  21 20 20 20 20 20 20 20  |    "..p!       |
00003730  20 20 45 51 55 42 31 37  3a 45 51 55 42 31 32 38  |  EQUB17:EQUB128|
00003740  3a 45 51 55 42 30 0d 12  7a 12 20 20 20 20 20 20  |:EQUB0..z.      |
00003750  20 20 20 41 4c 49 47 4e  0d 12 84 17 20 20 20 20  |   ALIGN....    |
00003760  20 20 20 20 20 42 4c 20  70 6c 6f 74 74 65 72 0d  |     BL plotter.|
00003770  12 8e 1a 20 20 20 20 20  20 20 20 20 41 44 52 20  |...         ADR |
00003780  52 31 2c 70 6c 6f 74 61  64 0d 12 98 18 20 20 20  |R1,plotad....   |
00003790  20 20 20 20 20 20 4c 44  52 20 52 31 2c 5b 52 31  |      LDR R1,[R1|
000037a0  5d 0d 12 a2 18 20 20 20  20 20 20 20 20 20 53 54  |]....         ST|
000037b0  52 20 52 30 2c 5b 52 31  5d 0d 12 ac 16 20 20 20  |R R0,[R1]....   |
000037c0  20 20 20 20 20 20 4d 4f  56 20 52 30 2c 23 31 0d  |      MOV R0,#1.|
000037d0  12 b6 1a 20 20 20 20 20  20 20 20 20 41 44 52 20  |...         ADR |
000037e0  52 31 2c 70 72 65 76 61  64 0d 12 c0 18 20 20 20  |R1,prevad....   |
000037f0  20 20 20 20 20 20 4c 44  52 20 52 31 2c 5b 52 31  |      LDR R1,[R1|
00003800  5d 0d 12 ca 18 20 20 20  20 20 20 20 20 20 53 54  |]....         ST|
00003810  52 20 52 30 2c 5b 52 31  5d 0d 12 d4 1c 20 20 20  |R R0,[R1]....   |
00003820  20 20 20 20 20 20 4c 44  4d 46 44 20 52 31 33 21  |      LDMFD R13!|
00003830  2c 7b 50 43 7d 0d 12 de  1d 2e 72 65 73 74 61 72  |,{PC}.....restar|
00003840  74 20 53 54 4d 46 44 20  52 31 33 21 2c 7b 52 31  |t STMFD R13!,{R1|
00003850  34 7d 0d 12 e8 17 20 20  20 20 20 20 20 20 20 53  |4}....         S|
00003860  57 49 20 32 35 36 2b 32  32 0d 12 f2 17 20 20 20  |WI 256+22....   |
00003870  20 20 20 20 20 20 53 57  49 20 32 35 36 2b 31 35  |      SWI 256+15|
00003880  0d 12 fc 18 20 20 20 20  20 20 20 20 20 4d 4f 56  |....         MOV|
00003890  20 52 30 2c 23 31 30 36  0d 13 06 16 20 20 20 20  | R0,#106....    |
000038a0  20 20 20 20 20 4d 4f 56  20 52 31 2c 23 31 0d 13  |     MOV R1,#1..|
000038b0  10 1a 20 20 20 20 20 20  20 20 20 53 57 49 20 22  |..         SWI "|
000038c0  4f 53 5f 42 79 74 65 22  0d 13 1a 17 20 20 20 20  |OS_Byte"....    |
000038d0  20 20 20 20 20 53 57 49  20 32 35 36 2b 32 33 0d  |     SWI 256+23.|
000038e0  13 24 16 20 20 20 20 20  20 20 20 20 53 57 49 20  |.$.         SWI |
000038f0  32 35 36 2b 31 0d 13 2e  14 20 20 20 20 20 20 20  |256+1....       |
00003900  20 20 53 57 49 20 32 35  36 0d 13 38 14 20 20 20  |  SWI 256..8.   |
00003910  20 20 20 20 20 20 53 57  49 20 32 35 36 0d 13 42  |      SWI 256..B|
00003920  14 20 20 20 20 20 20 20  20 20 53 57 49 20 32 35  |.         SWI 25|
00003930  36 0d 13 4c 14 20 20 20  20 20 20 20 20 20 53 57  |6..L.         SW|
00003940  49 20 32 35 36 0d 13 56  14 20 20 20 20 20 20 20  |I 256..V.       |
00003950  20 20 53 57 49 20 32 35  36 0d 13 60 14 20 20 20  |  SWI 256..`.   |
00003960  20 20 20 20 20 20 53 57  49 20 32 35 36 0d 13 6a  |      SWI 256..j|
00003970  14 20 20 20 20 20 20 20  20 20 53 57 49 20 32 35  |.         SWI 25|
00003980  36 0d 13 74 14 20 20 20  20 20 20 20 20 20 53 57  |6..t.         SW|
00003990  49 20 32 35 36 0d 13 7e  17 20 20 20 20 20 20 20  |I 256..~.       |
000039a0  20 20 42 4c 20 6c 6f 61  64 73 63 72 0d 13 88 1c  |  BL loadscr....|
000039b0  20 20 20 20 20 20 20 20  20 4c 44 4d 46 44 20 52  |         LDMFD R|
000039c0  31 33 21 2c 7b 50 43 7d  0d 13 92 0f 2e 6d 61 6e  |13!,{PC}.....man|
000039d0  64 65 6c 70 6c 6f 74 0d  13 9c 1d 20 20 20 20 20  |delplot....     |
000039e0  20 20 20 20 53 54 4d 46  44 20 52 31 33 21 2c 7b  |    STMFD R13!,{|
000039f0  52 31 34 7d 0d 13 a6 1a  2e 6d 70 6c 6f 6f 70 20  |R14}.....mploop |
00003a00  20 41 44 52 20 52 30 2c  70 6c 6f 74 61 64 0d 13  | ADR R0,plotad..|
00003a10  b0 18 20 20 20 20 20 20  20 20 20 4c 44 52 20 52  |..         LDR R|
00003a20  30 2c 5b 52 30 5d 0d 13  ba 18 20 20 20 20 20 20  |0,[R0]....      |
00003a30  20 20 20 4c 44 52 20 52  30 2c 5b 52 30 5d 0d 13  |   LDR R0,[R0]..|
00003a40  c4 16 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |..         CMP R|
00003a50  30 2c 23 31 0d 13 ce 17  20 20 20 20 20 20 20 20  |0,#1....        |
00003a60  20 42 4e 45 20 6e 6f 70  6c 6f 74 0d 13 d8 18 20  | BNE noplot.... |
00003a70  20 20 20 20 20 20 20 20  42 4c 20 63 6f 6e 74 70  |        BL contp|
00003a80  6c 6f 74 0d 13 e2 1a 20  20 20 20 20 20 20 20 20  |lot....         |
00003a90  41 44 52 20 52 31 2c 70  6c 6f 74 61 64 0d 13 ec  |ADR R1,plotad...|
00003aa0  18 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 31  |.         LDR R1|
00003ab0  2c 5b 52 31 5d 0d 13 f6  18 20 20 20 20 20 20 20  |,[R1]....       |
00003ac0  20 20 53 54 52 20 52 30  2c 5b 52 31 5d 0d 14 00  |  STR R0,[R1]...|
00003ad0  1b 2e 6e 6f 70 6c 6f 74  20 20 53 57 49 20 22 4f  |..noplot  SWI "O|
00003ae0  53 5f 4d 6f 75 73 65 22  0d 14 0a 16 20 20 20 20  |S_Mouse"....    |
00003af0  20 20 20 20 20 43 4d 50  20 52 32 2c 23 30 0d 14  |     CMP R2,#0..|
00003b00  14 17 20 20 20 20 20 20  20 20 20 42 45 51 20 6d  |..         BEQ m|
00003b10  70 6c 6f 6f 70 0d 14 1e  19 20 20 20 20 20 20 20  |ploop....       |
00003b20  20 20 43 4d 50 20 52 30  2c 23 31 30 32 34 0d 14  |  CMP R0,#1024..|
00003b30  28 17 20 20 20 20 20 20  20 20 20 42 43 43 20 62  |(.         BCC b|
00003b40  6f 78 6f 75 74 0d 14 32  17 20 20 20 20 20 20 20  |oxout..2.       |
00003b50  20 20 42 20 66 75 6e 63  74 69 6f 6e 0d 14 3c 27  |  B function..<'|
00003b60  2e 73 63 68 6f 6f 73 65  20 45 51 55 53 20 22 53  |.schoose EQUS "S|
00003b70  43 48 4f 4f 53 45 20 6c  6f 67 6f 22 3a 45 51 55  |CHOOSE logo":EQU|
00003b80  44 20 30 0d 14 46 12 20  20 20 20 20 20 20 20 20  |D 0..F.         |
00003b90  41 4c 49 47 4e 0d 14 50  15 2e 70 6c 6f 74 79 20  |ALIGN..P..ploty |
00003ba0  20 20 45 51 55 44 20 37  37 35 0d 14 5a 12 20 20  |  EQUD 775..Z.  |
00003bb0  20 20 20 20 20 20 20 41  4c 49 47 4e 0d 14 64 05  |       ALIGN..d.|
00003bc0  3a 0d 14 6e 18 2e 62 6f  78 6f 75 74 20 20 42 4c  |:..n..boxout  BL|
00003bd0  20 6d 6f 75 73 65 62 6f  78 0d 14 78 17 20 20 20  | mousebox..x.   |
00003be0  20 20 20 20 20 20 42 4c  20 73 61 76 65 73 63 72  |      BL savescr|
00003bf0  0d 14 82 1a 20 20 20 20  20 20 20 20 20 53 57 49  |....         SWI|
00003c00  22 4f 53 5f 4d 6f 75 73  65 22 0d 14 8c 19 20 20  |"OS_Mouse"....  |
00003c10  20 20 20 20 20 20 20 41  44 52 20 52 32 2c 78 62  |       ADR R2,xb|
00003c20  6f 78 61 0d 14 96 18 20  20 20 20 20 20 20 20 20  |oxa....         |
00003c30  53 54 52 20 52 30 2c 5b  52 32 5d 0d 14 a0 19 20  |STR R0,[R2].... |
00003c40  20 20 20 20 20 20 20 20  41 44 52 20 52 32 2c 79  |        ADR R2,y|
00003c50  62 6f 78 61 0d 14 aa 18  20 20 20 20 20 20 20 20  |boxa....        |
00003c60  20 53 54 52 20 52 31 2c  5b 52 32 5d 0d 14 b4 19  | STR R1,[R2]....|
00003c70  2e 62 6f 78 6f 75 74 6c  20 43 4d 50 20 52 30 2c  |.boxoutl CMP R0,|
00003c80  23 31 30 32 34 0d 14 be  1b 20 20 20 20 20 20 20  |#1024....       |
00003c90  20 20 4d 4f 56 43 53 20  52 30 2c 23 31 30 32 34  |  MOVCS R0,#1024|
00003ca0  0d 14 c8 1b 20 20 20 20  20 20 20 20 20 53 55 42  |....         SUB|
00003cb0  43 53 20 52 30 2c 52 30  2c 23 31 0d 14 d2 19 20  |CS R0,R0,#1.... |
00003cc0  20 20 20 20 20 20 20 20  41 44 52 20 52 32 2c 78  |        ADR R2,x|
00003cd0  62 6f 78 62 0d 14 dc 18  20 20 20 20 20 20 20 20  |boxb....        |
00003ce0  20 53 54 52 20 52 30 2c  5b 52 32 5d 0d 14 e6 19  | STR R0,[R2]....|
00003cf0  20 20 20 20 20 20 20 20  20 41 44 52 20 52 32 2c  |         ADR R2,|
00003d00  79 62 6f 78 62 0d 14 f0  18 20 20 20 20 20 20 20  |yboxb....       |
00003d10  20 20 53 54 52 20 52 31  2c 5b 52 32 5d 0d 14 fa  |  STR R1,[R2]...|
00003d20  1a 20 20 20 20 20 20 20  20 20 41 44 52 20 52 32  |.         ADR R2|
00003d30  2c 77 69 6d 70 61 64 0d  15 04 18 20 20 20 20 20  |,wimpad....     |
00003d40  20 20 20 20 4c 44 52 20  52 32 2c 5b 52 32 5d 0d  |    LDR R2,[R2].|
00003d50  15 0e 16 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |...         MOV |
00003d60  52 30 2c 23 31 0d 15 18  18 20 20 20 20 20 20 20  |R0,#1....       |
00003d70  20 20 53 54 52 20 52 30  2c 5b 52 32 5d 0d 15 22  |  STR R0,[R2].."|
00003d80  18 20 20 20 20 20 20 20  20 20 42 4c 20 6d 6f 75  |.         BL mou|
00003d90  73 65 62 6f 78 0d 15 2c  18 20 20 20 20 20 20 20  |sebox..,.       |
00003da0  20 20 42 4c 20 63 6f 6e  74 70 6c 6f 74 0d 15 36  |  BL contplot..6|
00003db0  18 20 20 20 20 20 20 20  20 20 42 4c 20 6d 6f 75  |.         BL mou|
00003dc0  73 65 62 6f 78 0d 15 40  1b 20 20 20 20 20 20 20  |sebox..@.       |
00003dd0  20 20 53 57 49 20 22 4f  53 5f 4d 6f 75 73 65 22  |  SWI "OS_Mouse"|
00003de0  0d 15 4a 16 20 20 20 20  20 20 20 20 20 43 4d 50  |..J.         CMP|
00003df0  20 52 32 2c 23 30 0d 15  54 18 20 20 20 20 20 20  | R2,#0..T.      |
00003e00  20 20 20 42 4e 45 20 62  6f 78 6f 75 74 6c 0d 15  |   BNE boxoutl..|
00003e10  5e 1a 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |^.         ADR R|
00003e20  32 2c 77 69 6d 70 61 64  0d 15 68 18 20 20 20 20  |2,wimpad..h.    |
00003e30  20 20 20 20 20 4c 44 52  20 52 32 2c 5b 52 32 5d  |     LDR R2,[R2]|
00003e40  0d 15 72 16 20 20 20 20  20 20 20 20 20 4d 4f 56  |..r.         MOV|
00003e50  20 52 30 2c 23 30 0d 15  7c 18 20 20 20 20 20 20  | R0,#0..|.      |
00003e60  20 20 20 53 54 52 20 52  30 2c 5b 52 32 5d 0d 15  |   STR R0,[R2]..|
00003e70  86 17 20 20 20 20 20 20  20 20 20 42 4c 20 6c 6f  |..         BL lo|
00003e80  61 64 73 63 72 0d 15 90  18 20 20 20 20 20 20 20  |adscr....       |
00003e90  20 20 42 4c 20 6d 6f 75  73 65 62 6f 78 0d 15 9a  |  BL mousebox...|
00003ea0  15 20 20 20 20 20 20 20  20 20 42 20 6d 70 6c 6f  |.         B mplo|
00003eb0  6f 70 0d 15 a4 1a 2e 70  6c 6f 74 61 64 20 20 45  |op.....plotad  E|
00003ec0  51 55 44 20 70 6c 6f 74  73 74 61 74 0d 15 ae 1a  |QUD plotstat....|
00003ed0  2e 77 69 6d 70 61 64 20  20 45 51 55 44 20 77 69  |.wimpad  EQUD wi|
00003ee0  6d 70 73 74 61 74 0d 15  b8 16 2e 70 72 65 76 61  |mpstat.....preva|
00003ef0  64 20 20 45 51 55 44 20  70 72 65 76 0d 15 c2 1e  |d  EQUD prev....|
00003f00  2e 66 75 6e 63 74 69 6f  6e 20 4d 4f 56 20 52 31  |.function MOV R1|
00003f10  2c 52 31 2c 4c 53 52 20  23 35 0d 15 cc 16 20 20  |,R1,LSR #5....  |
00003f20  20 20 20 20 20 20 20 43  4d 50 20 52 31 2c 23 31  |       CMP R1,#1|
00003f30  0d 15 d6 19 20 20 20 20  20 20 20 20 20 42 45 51  |....         BEQ|
00003f40  20 71 75 69 74 74 61 73  6b 0d 15 e0 16 20 20 20  | quittask....   |
00003f50  20 20 20 20 20 20 43 4d  50 20 52 31 2c 23 33 0d  |      CMP R1,#3.|
00003f60  15 ea 18 20 20 20 20 20  20 20 20 20 42 45 51 20  |...         BEQ |
00003f70  64 65 73 6b 74 6f 70 0d  15 f4 17 20 20 20 20 20  |desktop....     |
00003f80  20 20 20 20 43 4d 50 20  52 31 2c 23 31 35 0d 15  |    CMP R1,#15..|
00003f90  fe 18 20 20 20 20 20 20  20 20 20 42 45 51 20 69  |..         BEQ i|
00003fa0  74 65 72 61 74 65 0d 16  08 17 20 20 20 20 20 20  |terate....      |
00003fb0  20 20 20 43 4d 50 20 52  31 2c 23 31 39 0d 16 12  |   CMP R1,#19...|
00003fc0  19 20 20 20 20 20 20 20  20 20 42 45 51 20 72 65  |.         BEQ re|
00003fd0  73 65 74 70 6f 73 0d 16  1c 17 20 20 20 20 20 20  |setpos....      |
00003fe0  20 20 20 43 4d 50 20 52  31 2c 23 32 31 0d 16 26  |   CMP R1,#21..&|
00003ff0  17 20 20 20 20 20 20 20  20 20 42 45 51 20 7a 6f  |.         BEQ zo|
00004000  6f 6d 69 6e 0d 16 30 15  20 20 20 20 20 20 20 20  |omin..0.        |
00004010  20 42 20 6d 70 6c 6f 6f  70 0d 16 3a 05 3a 0d 16  | B mploop..:.:..|
00004020  44 20 5c 20 20 20 20 20  20 20 20 20 20 20 20 20  |D \             |
00004030  20 20 c8 98 20 46 55 4e  43 54 49 4f 4e 53 0d 16  |  .. FUNCTIONS..|
00004040  4e 05 3a 0d 16 58 1c 2e  64 65 73 6b 74 6f 70 20  |N.:..X..desktop |
00004050  4c 44 4d 46 44 20 52 31  33 21 2c 7b 50 43 7d 0d  |LDMFD R13!,{PC}.|
00004060  16 62 18 2e 71 75 69 74  74 61 73 6b 20 42 4c 20  |.b..quittask BL |
00004070  73 61 76 65 73 63 72 0d  16 6c 17 20 20 20 20 20  |savescr..l.     |
00004080  20 20 20 20 53 57 49 20  32 35 36 2b 33 31 0d 16  |    SWI 256+31..|
00004090  76 14 20 20 20 20 20 20  20 20 20 53 57 49 20 32  |v.         SWI 2|
000040a0  35 36 0d 16 80 14 20 20  20 20 20 20 20 20 20 53  |56....         S|
000040b0  57 49 20 32 35 36 0d 16  8a 1c 20 20 20 20 20 20  |WI 256....      |
000040c0  20 20 20 53 57 49 20 22  4f 53 5f 57 72 69 74 65  |   SWI "OS_Write|
000040d0  53 22 0d 16 94 3c 20 20  20 20 20 20 20 20 20 45  |S"...<         E|
000040e0  51 55 42 31 36 3a 45 51  55 42 31 37 3a 45 51 55  |QUB16:EQUB17:EQU|
000040f0  42 31 32 37 3a 45 51 55  53 22 51 75 69 74 3a 20  |B127:EQUS"Quit: |
00004100  41 72 65 20 59 6f 75 20  53 75 72 65 3f 22 0d 16  |Are You Sure?"..|
00004110  9e 28 20 20 20 20 20 20  20 20 20 45 51 55 42 31  |.(         EQUB1|
00004120  33 3a 45 51 55 42 31 30  3a 45 51 55 42 31 33 3a  |3:EQUB10:EQUB13:|
00004130  45 51 55 42 31 30 0d 16  a8 3d 20 20 20 20 20 20  |EQUB10...=      |
00004140  20 20 20 45 51 55 53 22  43 6c 69 63 6b 20 4c 45  |   EQUS"Click LE|
00004150  46 54 20 74 6f 20 71 75  69 74 3b 20 52 49 47 48  |FT to quit; RIGH|
00004160  54 20 74 6f 20 63 61 6e  63 65 6c 2e 22 3a 45 51  |T to cancel.":EQ|
00004170  55 42 30 0d 16 b2 12 20  20 20 20 20 20 20 20 20  |UB0....         |
00004180  41 4c 49 47 4e 0d 16 bc  1a 2e 73 74 6f 70 63 6c  |ALIGN.....stopcl|
00004190  20 20 53 57 49 22 4f 53  5f 4d 6f 75 73 65 22 0d  |  SWI"OS_Mouse".|
000041a0  16 c6 16 20 20 20 20 20  20 20 20 20 43 4d 50 20  |...         CMP |
000041b0  52 32 2c 23 30 0d 16 d0  17 20 20 20 20 20 20 20  |R2,#0....       |
000041c0  20 20 42 4e 45 20 73 74  6f 70 63 6c 0d 16 da 1a  |  BNE stopcl....|
000041d0  2e 71 75 69 74 6c 6f 70  20 53 57 49 22 4f 53 5f  |.quitlop SWI"OS_|
000041e0  4d 6f 75 73 65 22 0d 16  e4 16 20 20 20 20 20 20  |Mouse"....      |
000041f0  20 20 20 43 4d 50 20 52  32 2c 23 34 0d 16 ee 19  |   CMP R2,#4....|
00004200  20 20 20 20 20 20 20 20  20 42 45 51 20 71 75 69  |         BEQ qui|
00004210  74 6f 6b 61 79 0d 16 f8  16 20 20 20 20 20 20 20  |tokay....       |
00004220  20 20 43 4d 50 20 52 32  2c 23 31 0d 17 02 19 20  |  CMP R2,#1.... |
00004230  20 20 20 20 20 20 20 20  42 4c 45 51 20 6c 6f 61  |        BLEQ loa|
00004240  64 73 63 72 0d 17 0c 17  20 20 20 20 20 20 20 20  |dscr....        |
00004250  20 42 45 51 20 6d 70 6c  6f 6f 70 0d 17 16 16 20  | BEQ mploop.... |
00004260  20 20 20 20 20 20 20 20  42 20 71 75 69 74 6c 6f  |        B quitlo|
00004270  70 0d 17 20 1d 2e 71 75  69 74 6f 6b 61 79 20 4c  |p.. ..quitokay L|
00004280  44 4d 46 44 20 52 31 33  21 2c 7b 52 30 7d 0d 17  |DMFD R13!,{R0}..|
00004290  2a 16 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |*.         MOV R|
000042a0  30 2c 23 30 0d 17 34 19  20 20 20 20 20 20 20 20  |0,#0..4.        |
000042b0  20 53 55 42 20 52 30 2c  52 30 2c 23 31 0d 17 3e  | SUB R0,R0,#1..>|
000042c0  16 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 31  |.         MOV R1|
000042d0  2c 23 30 0d 17 48 16 20  20 20 20 20 20 20 20 20  |,#0..H.         |
000042e0  4d 4f 56 20 52 32 2c 23  30 0d 17 52 19 20 20 20  |MOV R2,#0..R.   |
000042f0  20 20 20 20 20 20 4d 4f  56 20 52 33 2c 23 31 32  |      MOV R3,#12|
00004300  38 30 0d 17 5c 19 20 20  20 20 20 20 20 20 20 4d  |80..\.         M|
00004310  4f 56 20 52 34 2c 23 31  30 32 34 0d 17 66 23 20  |OV R4,#1024..f# |
00004320  20 20 20 20 20 20 20 20  53 57 49 20 22 57 69 6d  |        SWI "Wim|
00004330  70 5f 46 6f 72 63 65 52  65 64 72 61 77 22 0d 17  |p_ForceRedraw"..|
00004340  70 1a 20 20 20 20 20 20  20 20 20 53 57 49 20 22  |p.         SWI "|
00004350  4f 53 5f 45 78 69 74 22  0d 17 7a 05 3a 0d 17 84  |OS_Exit"..z.:...|
00004360  1b 5c 20 20 20 20 20 20  20 20 5a 4f 4f 4d 20 46  |.\        ZOOM F|
00004370  55 4e 43 54 49 4f 4e 53  0d 17 8e 05 3a 0d 17 98  |UNCTIONS....:...|
00004380  1d 2e 72 65 73 65 74 70  6f 73 20 20 20 20 20 20  |..resetpos      |
00004390  20 20 42 4c 20 73 65 74  75 70 0d 17 a2 1f 20 20  |  BL setup....  |
000043a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
000043b0  4c 20 70 6c 6f 74 74 65  72 0d 17 ac 1d 20 20 20  |L plotter....   |
000043c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 42 20  |              B |
000043d0  6d 70 6c 6f 6f 70 0d 17  b6 05 3a 0d 17 c0 22 2e  |mploop....:...".|
000043e0  7a 6f 6f 6d 69 6e 20 20  20 20 20 20 20 20 20 20  |zoomin          |
000043f0  41 44 52 20 52 30 2c 78  6d 69 6e 61 64 0d 17 ca  |ADR R0,xminad...|
00004400  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004410  20 20 4c 44 52 20 52 30  2c 5b 52 30 5d 0d 17 d4  |  LDR R0,[R0]...|
00004420  23 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |#               |
00004430  20 20 41 44 52 20 52 31  2c 78 73 74 65 70 61 64  |  ADR R1,xstepad|
00004440  0d 17 de 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00004450  20 20 20 20 20 4c 44 52  20 52 31 2c 5b 52 31 5d  |     LDR R1,[R1]|
00004460  0d 17 e8 22 20 20 20 20  20 20 20 20 20 20 20 20  |..."            |
00004470  20 20 20 20 20 41 44 52  20 52 32 2c 79 6d 69 6e  |     ADR R2,ymin|
00004480  61 64 0d 17 f2 20 20 20  20 20 20 20 20 20 20 20  |ad...           |
00004490  20 20 20 20 20 20 20 4c  44 52 20 52 32 2c 5b 52  |       LDR R2,[R|
000044a0  32 5d 0d 17 fc 23 20 20  20 20 20 20 20 20 20 20  |2]...#          |
000044b0  20 20 20 20 20 20 20 41  44 52 20 52 33 2c 79 73  |       ADR R3,ys|
000044c0  74 65 70 61 64 0d 18 06  20 20 20 20 20 20 20 20  |tepad...        |
000044d0  20 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 33  |          LDR R3|
000044e0  2c 5b 52 33 5d 0d 18 10  22 20 20 20 20 20 20 20  |,[R3]..."       |
000044f0  20 20 20 20 20 20 20 20  20 20 41 44 52 20 52 34  |          ADR R4|
00004500  2c 78 62 6f 78 61 74 0d  18 1a 20 20 20 20 20 20  |,xboxat...      |
00004510  20 20 20 20 20 20 20 20  20 20 20 20 4c 44 52 20  |            LDR |
00004520  52 34 2c 5b 52 34 5d 0d  18 24 20 20 20 20 20 20  |R4,[R4]..$      |
00004530  20 20 20 20 20 20 20 20  20 20 20 20 4c 44 52 20  |            LDR |
00004540  52 34 2c 5b 52 34 5d 0d  18 2e 22 20 20 20 20 20  |R4,[R4]..."     |
00004550  20 20 20 20 20 20 20 20  20 20 20 20 41 44 52 20  |            ADR |
00004560  52 35 2c 78 62 6f 78 62  74 0d 18 38 20 20 20 20  |R5,xboxbt..8    |
00004570  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
00004580  52 20 52 35 2c 5b 52 35  5d 0d 18 42 20 20 20 20  |R R5,[R5]..B    |
00004590  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
000045a0  52 20 52 35 2c 5b 52 35  5d 0d 18 4c 1e 20 20 20  |R R5,[R5]..L.   |
000045b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
000045c0  50 20 52 34 2c 52 35 0d  18 56 20 20 20 20 20 20  |P R4,R5..V      |
000045d0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
000045e0  53 20 52 36 2c 52 34 0d  18 60 20 20 20 20 20 20  |S R6,R4..`      |
000045f0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00004600  53 20 52 34 2c 52 35 0d  18 6a 20 20 20 20 20 20  |S R4,R5..j      |
00004610  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 43  |            MOVC|
00004620  53 20 52 35 2c 52 36 0d  18 74 22 20 20 20 20 20  |S R5,R6..t"     |
00004630  20 20 20 20 20 20 20 20  20 20 20 20 41 44 52 20  |            ADR |
00004640  52 36 2c 79 62 6f 78 61  74 0d 18 7e 20 20 20 20  |R6,yboxat..~    |
00004650  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
00004660  52 20 52 36 2c 5b 52 36  5d 0d 18 88 20 20 20 20  |R R6,[R6]...    |
00004670  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
00004680  52 20 52 36 2c 5b 52 36  5d 0d 18 92 30 20 20 20  |R R6,[R6]...0   |
00004690  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
000046a0  52 20 52 37 2c 79 62 6f  78 62 74 20 20 20 20 20  |R R7,yboxbt     |
000046b0  5c 20 52 30 3d 78 6d 69  6e 0d 18 9c 31 20 20 20  |\ R0=xmin...1   |
000046c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
000046d0  52 20 52 37 2c 5b 52 37  5d 20 20 20 20 20 20 20  |R R7,[R7]       |
000046e0  5c 20 52 31 3d 78 73 74  65 70 0d 18 a6 30 20 20  |\ R1=xstep...0  |
000046f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
00004700  44 52 20 52 37 2c 5b 52  37 5d 20 20 20 20 20 20  |DR R7,[R7]      |
00004710  20 5c 20 52 32 3d 79 6d  69 6e 0d 18 b0 31 20 20  | \ R2=ymin...1  |
00004720  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 43  |               C|
00004730  4d 50 20 52 36 2c 52 37  20 20 20 20 20 20 20 20  |MP R6,R7        |
00004740  20 5c 20 52 33 3d 79 73  74 65 70 0d 18 ba 31 20  | \ R3=ystep...1 |
00004750  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004760  4d 4f 56 43 53 20 52 38  2c 52 36 20 20 20 20 20  |MOVCS R8,R6     |
00004770  20 20 5c 20 52 34 3d 78  62 6f 78 61 0d 18 c4 31  |  \ R4=xboxa...1|
00004780  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004790  20 4d 4f 56 43 53 20 52  36 2c 52 37 20 20 20 20  | MOVCS R6,R7    |
000047a0  20 20 20 5c 20 52 35 3d  78 62 6f 78 62 0d 18 ce  |   \ R5=xboxb...|
000047b0  31 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |1               |
000047c0  20 20 4d 4f 56 43 53 20  52 37 2c 52 38 20 20 20  |  MOVCS R7,R8   |
000047d0  20 20 20 20 5c 20 52 36  3d 79 62 6f 78 61 0d 18  |    \ R6=yboxa..|
000047e0  d8 31 45 51 55 44 20 26  45 43 46 30 30 31 30 30  |.1EQUD &ECF00100|
000047f0  20 5c 20 4c 44 46 45 20  46 30 2c 5b 52 30 5d 20  | \ LDFE F0,[R0] |
00004800  20 20 20 20 20 5c 20 52  37 3d 79 62 6f 78 62 0d  |     \ R7=yboxb.|
00004810  18 e2 21 45 51 55 44 20  26 45 43 46 31 31 31 30  |..!EQUD &ECF1110|
00004820  30 20 5c 20 4c 44 46 45  20 46 31 2c 5b 52 31 5d  |0 \ LDFE F1,[R1]|
00004830  0d 18 ec 1f 45 51 55 44  20 26 45 45 30 32 34 31  |....EQUD &EE0241|
00004840  44 32 20 5c 20 46 4c 54  45 20 46 32 2c 52 34 0d  |D2 \ FLTE F2,R4.|
00004850  18 f6 22 45 51 55 44 20  26 45 45 31 41 33 31 30  |.."EQUD &EE1A310|
00004860  31 20 5c 20 4d 4c 46 45  20 46 33 2c 46 32 2c 46  |1 \ MLFE F3,F2,F|
00004870  31 0d 19 00 22 45 51 55  44 20 26 45 45 30 42 33  |1..."EQUD &EE0B3|
00004880  31 30 30 20 5c 20 41 44  46 45 20 46 33 2c 46 33  |100 \ ADFE F3,F3|
00004890  2c 46 30 0d 19 0a 1f 45  51 55 44 20 26 45 45 30  |,F0....EQUD &EE0|
000048a0  34 35 31 44 34 20 5c 20  46 4c 54 45 20 46 34 2c  |451D4 \ FLTE F4,|
000048b0  52 35 0d 19 14 22 45 51  55 44 20 26 45 45 31 43  |R5..."EQUD &EE1C|
000048c0  35 31 30 31 20 5c 20 4d  4c 46 45 20 46 35 2c 46  |5101 \ MLFE F5,F|
000048d0  34 2c 46 31 0d 19 1e 22  45 51 55 44 20 26 45 45  |4,F1..."EQUD &EE|
000048e0  30 44 35 31 30 30 20 5c  20 41 44 46 45 20 46 35  |0D5100 \ ADFE F5|
000048f0  2c 46 35 2c 46 30 0d 19  28 22 45 51 55 44 20 26  |,F5,F0..("EQUD &|
00004900  45 45 32 44 35 31 30 33  20 5c 20 53 42 46 45 20  |EE2D5103 \ SBFE |
00004910  46 35 2c 46 35 2c 46 33  0d 19 32 21 20 20 20 20  |F5,F5,F3..2!    |
00004920  20 20 20 20 20 20 20 20  20 20 20 20 20 4d 4f 56  |             MOV|
00004930  20 52 38 2c 23 31 30 32  34 0d 19 3c 1f 45 51 55  | R8,#1024..<.EQU|
00004940  44 20 26 45 45 30 36 38  31 44 36 20 5c 20 46 4c  |D &EE0681D6 \ FL|
00004950  54 45 20 46 36 2c 52 38  0d 19 46 22 45 51 55 44  |TE F6,R8..F"EQUD|
00004960  20 26 45 45 34 44 37 31  30 36 20 5c 20 44 56 46  | &EE4D7106 \ DVF|
00004970  45 20 46 37 2c 46 35 2c  46 36 0d 19 50 21 45 51  |E F7,F5,F6..P!EQ|
00004980  55 44 20 26 45 43 45 30  33 31 30 30 20 5c 20 53  |UD &ECE03100 \ S|
00004990  54 46 45 20 46 33 2c 5b  52 30 5d 0d 19 5a 21 45  |TFE F3,[R0]..Z!E|
000049a0  51 55 44 20 26 45 43 45  31 37 31 30 30 20 5c 20  |QUD &ECE17100 \ |
000049b0  53 54 46 45 20 46 37 2c  5b 52 31 5d 0d 19 64 05  |STFE F7,[R1]..d.|
000049c0  3a 0d 19 6e 21 45 51 55  44 20 26 45 43 46 32 30  |:..n!EQUD &ECF20|
000049d0  31 30 30 20 5c 20 4c 44  46 45 20 46 30 2c 5b 52  |100 \ LDFE F0,[R|
000049e0  32 5d 0d 19 78 21 45 51  55 44 20 26 45 43 46 33  |2]..x!EQUD &ECF3|
000049f0  31 31 30 30 20 5c 20 4c  44 46 45 20 46 31 2c 5b  |1100 \ LDFE F1,[|
00004a00  52 33 5d 0d 19 82 1f 45  51 55 44 20 26 45 45 30  |R3]....EQUD &EE0|
00004a10  32 36 31 44 32 20 5c 20  46 4c 54 45 20 46 32 2c  |261D2 \ FLTE F2,|
00004a20  52 36 0d 19 8c 22 45 51  55 44 20 26 45 45 31 41  |R6..."EQUD &EE1A|
00004a30  33 31 30 31 20 5c 20 4d  4c 46 45 20 46 33 2c 46  |3101 \ MLFE F3,F|
00004a40  32 2c 46 31 0d 19 96 22  45 51 55 44 20 26 45 45  |2,F1..."EQUD &EE|
00004a50  30 42 33 31 30 30 20 5c  20 41 44 46 45 20 46 33  |0B3100 \ ADFE F3|
00004a60  2c 46 33 2c 46 30 0d 19  a0 1f 45 51 55 44 20 26  |,F3,F0....EQUD &|
00004a70  45 45 30 34 37 31 44 34  20 5c 20 46 4c 54 45 20  |EE0471D4 \ FLTE |
00004a80  46 34 2c 52 37 0d 19 aa  22 45 51 55 44 20 26 45  |F4,R7..."EQUD &E|
00004a90  45 31 43 35 31 30 31 20  5c 20 4d 4c 46 45 20 46  |E1C5101 \ MLFE F|
00004aa0  35 2c 46 34 2c 46 31 0d  19 b4 22 45 51 55 44 20  |5,F4,F1..."EQUD |
00004ab0  26 45 45 30 44 35 31 30  30 20 5c 20 41 44 46 45  |&EE0D5100 \ ADFE|
00004ac0  20 46 35 2c 46 35 2c 46  30 0d 19 be 22 45 51 55  | F5,F5,F0..."EQU|
00004ad0  44 20 26 45 45 32 44 35  31 30 33 20 5c 20 53 42  |D &EE2D5103 \ SB|
00004ae0  46 45 20 46 35 2c 46 35  2c 46 33 0d 19 c8 22 45  |FE F5,F5,F3..."E|
00004af0  51 55 44 20 26 45 45 34  44 37 31 30 36 20 5c 20  |QUD &EE4D7106 \ |
00004b00  44 56 46 45 20 46 37 2c  46 35 2c 46 36 0d 19 d2  |DVFE F7,F5,F6...|
00004b10  21 45 51 55 44 20 26 45  43 45 32 33 31 30 30 20  |!EQUD &ECE23100 |
00004b20  5c 20 53 54 46 45 20 46  33 2c 5b 52 32 5d 0d 19  |\ STFE F3,[R2]..|
00004b30  dc 21 45 51 55 44 20 26  45 43 45 33 37 31 30 30  |.!EQUD &ECE37100|
00004b40  20 5c 20 53 54 46 45 20  46 37 2c 5b 52 33 5d 0d  | \ STFE F7,[R3].|
00004b50  19 e6 1f 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00004b60  20 20 20 20 42 4c 20 70  6c 6f 74 74 65 72 0d 19  |    BL plotter..|
00004b70  f0 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00004b80  20 20 20 42 20 6d 70 6c  6f 6f 70 0d 19 fa 05 3a  |   B mploop....:|
00004b90  0d 1a 04 1e 2e 78 6d 69  6e 61 64 20 20 20 20 20  |.....xminad     |
00004ba0  20 20 20 20 20 45 51 55  44 20 78 6d 69 6e 0d 1a  |     EQUD xmin..|
00004bb0  0e 1e 2e 79 6d 69 6e 61  64 20 20 20 20 20 20 20  |...yminad       |
00004bc0  20 20 20 45 51 55 44 20  79 6d 69 6e 0d 1a 18 1f  |   EQUD ymin....|
00004bd0  2e 78 73 74 65 70 61 64  20 20 20 20 20 20 20 20  |.xstepad        |
00004be0  20 45 51 55 44 20 78 73  74 65 70 0d 1a 22 1f 2e  | EQUD xstep.."..|
00004bf0  79 73 74 65 70 61 64 20  20 20 20 20 20 20 20 20  |ystepad         |
00004c00  45 51 55 44 20 79 73 74  65 70 0d 1a 2c 1f 2e 78  |EQUD ystep..,..x|
00004c10  62 6f 78 61 74 20 20 20  20 20 20 20 20 20 20 45  |boxat          E|
00004c20  51 55 44 20 78 62 6f 78  61 0d 1a 36 1f 2e 79 62  |QUD xboxa..6..yb|
00004c30  6f 78 61 74 20 20 20 20  20 20 20 20 20 20 45 51  |oxat          EQ|
00004c40  55 44 20 79 62 6f 78 61  0d 1a 40 1f 2e 78 62 6f  |UD yboxa..@..xbo|
00004c50  78 62 74 20 20 20 20 20  20 20 20 20 20 45 51 55  |xbt          EQU|
00004c60  44 20 78 62 6f 78 62 0d  1a 4a 1f 2e 79 62 6f 78  |D xboxb..J..ybox|
00004c70  62 74 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |bt          EQUD|
00004c80  20 79 62 6f 78 62 0d 1a  54 05 3a 0d 1a 5e 1f 5c  | yboxb..T.:..^.\|
00004c90  20 43 48 41 4e 47 45 20  4d 41 58 49 4d 55 4d 20  | CHANGE MAXIMUM |
00004ca0  49 54 45 52 41 54 49 4f  4e 53 0d 1a 68 1f 2e 69  |ITERATIONS..h..i|
00004cb0  74 65 72 61 74 65 20 20  20 20 20 20 20 20 20 42  |terate         B|
00004cc0  4c 20 73 61 76 65 73 63  72 0d 1a 72 24 20 20 20  |L savescr..r$   |
00004cd0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 53 57  |              SW|
00004ce0  49 20 22 4f 53 5f 57 72  69 74 65 53 22 0d 1a 7c  |I "OS_WriteS"..||
00004cf0  27 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |'               |
00004d00  20 20 45 51 55 42 33 31  3a 45 51 55 42 31 3a 45  |  EQUB31:EQUB1:E|
00004d10  51 55 42 31 0d 1a 86 45  20 20 20 20 20 20 20 20  |QUB1...E        |
00004d20  20 20 20 20 20 20 20 20  20 45 51 55 42 31 36 3a  |         EQUB16:|
00004d30  45 51 55 42 31 37 3a 45  51 55 42 31 32 37 3a 45  |EQUB17:EQUB127:E|
00004d40  51 55 53 22 43 75 72 72  65 6e 74 20 49 74 65 72  |QUS"Current Iter|
00004d50  61 74 69 6f 6e 73 3a 20  22 0d 1a 90 1b 20 20 20  |ations: "....   |
00004d60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |              EQ|
00004d70  55 42 20 30 0d 1a 9a 1a  20 20 20 20 20 20 20 20  |UB 0....        |
00004d80  20 20 20 20 20 20 20 20  20 41 4c 49 47 4e 0d 1a  |         ALIGN..|
00004d90  a4 24 2e 69 74 65 72 6c  6f 6f 70 20 20 20 20 20  |.$.iterloop     |
00004da0  20 20 20 53 57 49 20 22  4f 53 5f 57 72 69 74 65  |   SWI "OS_Write|
00004db0  53 22 0d 1a ae 28 20 20  20 20 20 20 20 20 20 20  |S"...(          |
00004dc0  20 20 20 20 20 20 20 45  51 55 42 33 31 3a 45 51  |       EQUB31:EQ|
00004dd0  55 42 32 31 3a 45 51 55  42 31 0d 1a b8 1f 2e 6d  |UB21:EQUB1.....m|
00004de0  61 78 73 74 72 20 20 20  20 20 20 20 20 20 20 45  |axstr          E|
00004df0  51 55 53 20 22 30 32 35  22 0d 1a c2 1b 20 20 20  |QUS "025"....   |
00004e00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |              EQ|
00004e10  55 42 20 30 0d 1a cc 1a  20 20 20 20 20 20 20 20  |UB 0....        |
00004e20  20 20 20 20 20 20 20 20  20 41 4c 49 47 4e 0d 1a  |         ALIGN..|
00004e30  d6 20 2e 67 65 74 6b 65  79 20 20 20 20 20 20 20  |. .getkey       |
00004e40  20 20 20 4d 4f 56 20 52  30 2c 23 26 38 31 0d 1a  |   MOV R0,#&81..|
00004e50  e0 1e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00004e60  20 20 20 4d 4f 56 20 52  31 2c 23 30 0d 1a ea 1e  |   MOV R1,#0....|
00004e70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004e80  20 4d 4f 56 20 52 32 2c  23 30 0d 1a f4 22 20 20  | MOV R2,#0..."  |
00004e90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
00004ea0  57 49 20 22 4f 53 5f 42  79 74 65 22 0d 1a fe 1f  |WI "OS_Byte"....|
00004eb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004ec0  20 42 43 53 20 67 65 74  6b 65 79 0d 1b 08 1f 20  | BCS getkey.... |
00004ed0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004ee0  43 4d 50 20 52 31 2c 23  31 33 0d 1b 12 20 20 20  |CMP R1,#13...   |
00004ef0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
00004f00  45 51 20 69 74 65 72 67  6f 74 0d 1b 1c 1f 20 20  |EQ itergot....  |
00004f10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 43  |               C|
00004f20  4d 50 20 52 31 2c 23 34  38 0d 1b 26 1f 20 20 20  |MP R1,#48..&.   |
00004f30  20 20 20 20 20 20 20 20  20 20 20 20 20 20 42 43  |              BC|
00004f40  43 20 67 65 74 6b 65 79  0d 1b 30 1f 20 20 20 20  |C getkey..0.    |
00004f50  20 20 20 20 20 20 20 20  20 20 20 20 20 43 4d 50  |             CMP|
00004f60  20 52 31 2c 23 35 38 0d  1b 3a 1f 20 20 20 20 20  | R1,#58..:.     |
00004f70  20 20 20 20 20 20 20 20  20 20 20 20 42 43 53 20  |            BCS |
00004f80  67 65 74 6b 65 79 0d 1b  44 22 20 20 20 20 20 20  |getkey..D"      |
00004f90  20 20 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |           ADR R|
00004fa0  30 2c 6d 61 78 73 74 72  0d 1b 4e 24 20 20 20 20  |0,maxstr..N$    |
00004fb0  20 20 20 20 20 20 20 20  20 20 20 20 20 4c 44 52  |             LDR|
00004fc0  42 20 52 32 2c 5b 52 30  2c 23 31 5d 0d 1b 58 21  |B R2,[R0,#1]..X!|
00004fd0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004fe0  20 53 54 52 42 20 52 32  2c 5b 52 30 5d 0d 1b 62  | STRB R2,[R0]..b|
00004ff0  24 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |$               |
00005000  20 20 4c 44 52 42 20 52  32 2c 5b 52 30 2c 23 32  |  LDRB R2,[R0,#2|
00005010  5d 0d 1b 6c 24 20 20 20  20 20 20 20 20 20 20 20  |]..l$           |
00005020  20 20 20 20 20 20 53 54  52 42 20 52 32 2c 5b 52  |      STRB R2,[R|
00005030  30 2c 23 31 5d 0d 1b 76  24 20 20 20 20 20 20 20  |0,#1]..v$       |
00005040  20 20 20 20 20 20 20 20  20 20 53 54 52 42 20 52  |          STRB R|
00005050  31 2c 5b 52 30 2c 23 32  5d 0d 1b 80 1f 20 20 20  |1,[R0,#2]....   |
00005060  20 20 20 20 20 20 20 20  20 20 20 20 20 20 42 20  |              B |
00005070  69 74 65 72 6c 6f 6f 70  0d 1b 8a 22 2e 69 74 65  |iterloop...".ite|
00005080  72 67 6f 74 20 20 20 20  20 20 20 20 20 41 44 52  |rgot         ADR|
00005090  20 52 30 2c 6d 61 78 73  74 72 0d 1b 94 21 20 20  | R0,maxstr...!  |
000050a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4c  |               L|
000050b0  44 52 42 20 52 31 2c 5b  52 30 5d 0d 1b 9e 22 20  |DRB R1,[R0]..." |
000050c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000050d0  53 55 42 20 52 31 2c 52  31 2c 23 34 38 0d 1b a8  |SUB R1,R1,#48...|
000050e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000050f0  20 20 4d 4f 56 20 52 32  2c 23 31 30 30 0d 1b b2  |  MOV R2,#100...|
00005100  21 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |!               |
00005110  20 20 4d 55 4c 20 52 33  2c 52 32 2c 52 31 0d 1b  |  MUL R3,R2,R1..|
00005120  bc 1e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00005130  20 20 20 4d 4f 56 20 52  34 2c 52 33 0d 1b c6 24  |   MOV R4,R3...$|
00005140  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005150  20 4c 44 52 42 20 52 31  2c 5b 52 30 2c 23 31 5d  | LDRB R1,[R0,#1]|
00005160  0d 1b d0 22 20 20 20 20  20 20 20 20 20 20 20 20  |..."            |
00005170  20 20 20 20 20 53 55 42  20 52 31 2c 52 31 2c 23  |     SUB R1,R1,#|
00005180  34 38 0d 1b da 1f 20 20  20 20 20 20 20 20 20 20  |48....          |
00005190  20 20 20 20 20 20 20 4d  4f 56 20 52 32 2c 23 31  |       MOV R2,#1|
000051a0  30 0d 1b e4 21 20 20 20  20 20 20 20 20 20 20 20  |0...!           |
000051b0  20 20 20 20 20 20 4d 55  4c 20 52 33 2c 52 32 2c  |      MUL R3,R2,|
000051c0  52 31 0d 1b ee 21 20 20  20 20 20 20 20 20 20 20  |R1...!          |
000051d0  20 20 20 20 20 20 20 41  44 44 20 52 34 2c 52 34  |       ADD R4,R4|
000051e0  2c 52 33 0d 1b f8 24 20  20 20 20 20 20 20 20 20  |,R3...$         |
000051f0  20 20 20 20 20 20 20 20  4c 44 52 42 20 52 31 2c  |        LDRB R1,|
00005200  5b 52 30 2c 23 32 5d 0d  1c 02 22 20 20 20 20 20  |[R0,#2]..."     |
00005210  20 20 20 20 20 20 20 20  20 20 20 20 53 55 42 20  |            SUB |
00005220  52 31 2c 52 31 2c 23 34  38 0d 1c 0c 21 20 20 20  |R1,R1,#48...!   |
00005230  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
00005240  44 20 52 34 2c 52 34 2c  52 31 0d 1c 16 22 20 20  |D R4,R4,R1..."  |
00005250  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
00005260  44 52 20 52 30 2c 6d 61  78 69 61 64 0d 1c 20 20  |DR R0,maxiad..  |
00005270  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005280  20 4c 44 52 20 52 30 2c  5b 52 30 5d 0d 1c 2a 20  | LDR R0,[R0]..* |
00005290  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000052a0  20 53 54 52 20 52 34 2c  5b 52 30 5d 0d 1c 34 1f  | STR R4,[R0]..4.|
000052b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000052c0  20 42 4c 20 6c 6f 61 64  73 63 72 0d 1c 3e 1f 20  | BL loadscr..>. |
000052d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000052e0  42 4c 20 70 6c 6f 74 74  65 72 0d 1c 48 1d 20 20  |BL plotter..H.  |
000052f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
00005300  20 6d 70 6c 6f 6f 70 0d  1c 52 1f 2e 6d 61 78 69  | mploop..R..maxi|
00005310  61 64 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |ad          EQUD|
00005320  20 6d 61 78 69 74 0d 1c  5c 05 3a 0d 1c 66 0b 2e  | maxit..\.:..f..|
00005330  73 63 72 65 65 6e 0d 1c  70 05 5d 0d 1c 7a 05 ed  |screen..p.]..z..|
00005340  0d 1c 84 30 f4 4f 53 43  4c 49 20 28 22 4d 45 4d  |...0.OSCLI ("MEM|
00005350  4f 52 59 49 20 22 2b 53  54 52 24 7e 7a 6f 6f 6d  |ORYI "+STR$~zoom|
00005360  69 6e 2b 22 20 2b 20 31  30 30 22 29 3a 45 4e 44  |in+" + 100"):END|
00005370  0d 1c 8e 05 e1 0d ff                              |.......|
00005377