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

OldMand/Source

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/Source
Read OK:
File size: 5AB7 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=4 TO 6 STEP 2
  200P%=&8000:O%=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         EQUB31:EQUB64:EQUB18:EQUS"Colour Cycling  "
 4700         EQUB31:EQUB64:EQUB20:EQUS"Save Screen     "
 4710         EQUB17:EQUB6
 4720         EQUB31:EQUB64:EQUB28:EQUS"Desktop         "
 4730         EQUB31:EQUB64:EQUB30:EQUS"Quit Program    "
 4740         EQUB17:EQUB128:EQUB0
 4750         ALIGN
 4760         BL plotter
 4770         ADR R1,plotad
 4780         LDR R1,[R1]
 4790         STR R0,[R1]
 4800         MOV R0,#1
 4810         ADR R1,prevad
 4820         LDR R1,[R1]
 4830         STR R0,[R1]
 4840         LDMFD R13!,{PC}
 4850.restart STMFD R13!,{R14}
 4860         SWI 256+22
 4870         SWI 256+15
 4880         MOV R0,#106
 4890         MOV R1,#1
 4900         SWI "OS_Byte"
 4910         SWI 256+23
 4920         SWI 256+1
 4930         SWI 256
 4940         SWI 256
 4950         SWI 256
 4960         SWI 256
 4970         SWI 256
 4980         SWI 256
 4990         SWI 256
 5000         SWI 256
 5010         BL loadscr
 5020         LDMFD R13!,{PC}
 5030.mandelplot
 5040         STMFD R13!,{R14}
 5050.mploop  ADR R0,plotad
 5060         LDR R0,[R0]
 5070         LDR R0,[R0]
 5080         CMP R0,#1
 5090         BNE noplot
 5100         BL contplot
 5110         ADR R1,plotad
 5120         LDR R1,[R1]
 5130         STR R0,[R1]
 5140.noplot  SWI "OS_Mouse"
 5150         CMP R2,#0
 5160         BEQ mploop
 5170         CMP R0,#1024
 5180         BCC boxout
 5190         B function
 5200.schoose EQUS "SCHOOSE logo":EQUD 0
 5210         ALIGN
 5220.ploty   EQUD 775
 5230         ALIGN
 5240:
 5250.boxout  BL mousebox
 5260         BL savescr
 5270         SWI"OS_Mouse"
 5280         ADR R2,xboxa
 5290         STR R0,[R2]
 5300         ADR R2,yboxa
 5310         STR R1,[R2]
 5320.boxoutl CMP R0,#1024
 5330         MOVCS R0,#1024
 5340         SUBCS R0,R0,#1
 5350         ADR R2,xboxb
 5360         STR R0,[R2]
 5370         ADR R2,yboxb
 5380         STR R1,[R2]
 5390         ADR R2,wimpad
 5400         LDR R2,[R2]
 5410         MOV R0,#1
 5420         STR R0,[R2]
 5430         BL mousebox
 5440         BL contplot
 5450         BL mousebox
 5460         SWI "OS_Mouse"
 5470         CMP R2,#0
 5480         BNE boxoutl
 5490         ADR R2,wimpad
 5500         LDR R2,[R2]
 5510         MOV R0,#0
 5520         STR R0,[R2]
 5530         BL loadscr
 5540         BL mousebox
 5550         B mploop
 5560.plotad  EQUD plotstat
 5570.wimpad  EQUD wimpstat
 5580.prevad  EQUD prev
 5590.function MOV R1,R1,LSR #5
 5600         CMP R1,#1
 5610         BEQ quittask
 5620         CMP R1,#3
 5630         BEQ desktop
 5640         CMP R1,#11
 5650         BEQ scrstore
 5660         CMP R1,#13
 5670         BEQ colcycle
 5680         CMP R1,#15
 5690         BEQ iterate
 5700         CMP R1,#19
 5710         BEQ resetpos
 5720         CMP R1,#21
 5730         BEQ zoomin
 5740         B mploop
 5750:
 5760\               QUIT FUNCTIONS
 5770:
 5780.desktop LDMFD R13!,{PC}
 5790.quittask BL savescr
 5800         SWI 256+31
 5810         SWI 256
 5820         SWI 256
 5830         SWI "OS_WriteS"
 5840         EQUB16:EQUB17:EQUB127:EQUS"Quit: Are You Sure?"
 5850         EQUB13:EQUB10:EQUB13:EQUB10
 5860         EQUS"Click LEFT to quit; RIGHT to cancel.":EQUB0
 5870         ALIGN
 5880.stopcl  SWI"OS_Mouse"
 5890         CMP R2,#0
 5900         BNE stopcl
 5910.quitlop SWI"OS_Mouse"
 5920         CMP R2,#4
 5930         BEQ quitokay
 5940         CMP R2,#1
 5950         BLEQ loadscr
 5960         BEQ mploop
 5970         B quitlop
 5980.quitokay LDMFD R13!,{R0}
 5990         MOV R0,#0
 6000         SUB R0,R0,#1
 6010         MOV R1,#0
 6020         MOV R2,#0
 6030         MOV R3,#1280
 6040         MOV R4,#1024
 6050         SWI "Wimp_ForceRedraw"
 6060         SWI "OS_Exit"
 6070:
 6080\        ZOOM FUNCTIONS
 6090:
 6100.resetpos        BL setup
 6110                 BL plotter
 6120                 B mploop
 6130:
 6140.zoomin          ADR R0,xminad
 6150                 LDR R0,[R0]
 6160                 ADR R1,xstepad
 6170                 LDR R1,[R1]
 6180                 ADR R2,yminad
 6190                 LDR R2,[R2]
 6200                 ADR R3,ystepad
 6210                 LDR R3,[R3]
 6220                 ADR R4,xboxat
 6230                LDR R4,[R4]
 6240                 LDR R4,[R4]
 6250                 ADR R5,xboxbt
 6260                 LDR R5,[R5]
 6270                 LDR R5,[R5]
 6280                 CMP R4,R5
 6290                 MOVCS R6,R4
 6300                 MOVCS R4,R5
 6310                 MOVCS R5,R6
 6320                 ADR R6,yboxat
 6330                 LDR R6,[R6]
 6340                 LDR R6,[R6]
 6350                 ADR R7,yboxbt     \ R0=xmin
 6360                 LDR R7,[R7]       \ R1=xstep
 6370                 LDR R7,[R7]       \ R2=ymin
 6380                 CMP R6,R7         \ R3=ystep
 6390                 MOVCS R8,R6       \ R4=xboxa
 6400                 MOVCS R6,R7       \ R5=xboxb
 6410                 MOVCS R7,R8       \ R6=yboxa
 6420EQUD &ECF00100 \ LDFE F0,[R0]      \ R7=yboxb
 6430EQUD &ECF11100 \ LDFE F1,[R1]
 6440EQUD &EE0241D2 \ FLTE F2,R4
 6450EQUD &EE1A3101 \ MLFE F3,F2,F1
 6460EQUD &EE0B3100 \ ADFE F3,F3,F0
 6470EQUD &EE0451D4 \ FLTE F4,R5
 6480EQUD &EE1C5101 \ MLFE F5,F4,F1
 6490EQUD &EE0D5100 \ ADFE F5,F5,F0
 6500EQUD &EE2D5103 \ SBFE F5,F5,F3
 6510                 MOV R8,#1024
 6520EQUD &EE0681D6 \ FLTE F6,R8
 6530EQUD &EE4D7106 \ DVFE F7,F5,F6
 6540EQUD &ECE03100 \ STFE F3,[R0]
 6550EQUD &ECE17100 \ STFE F7,[R1]
 6560:
 6570EQUD &ECF20100 \ LDFE F0,[R2]
 6580EQUD &ECF31100 \ LDFE F1,[R3]
 6590EQUD &EE0261D2 \ FLTE F2,R6
 6600EQUD &EE1A3101 \ MLFE F3,F2,F1
 6610EQUD &EE0B3100 \ ADFE F3,F3,F0
 6620EQUD &EE0471D4 \ FLTE F4,R7
 6630EQUD &EE1C5101 \ MLFE F5,F4,F1
 6640EQUD &EE0D5100 \ ADFE F5,F5,F0
 6650EQUD &EE2D5103 \ SBFE F5,F5,F3
 6660EQUD &EE4D7106 \ DVFE F7,F5,F6
 6670EQUD &ECE23100 \ STFE F3,[R2]
 6680EQUD &ECE37100 \ STFE F7,[R3]
 6690                 BL plotter
 6700                 B mploop
 6710:
 6720.xminad          EQUD xmin
 6730.yminad          EQUD ymin
 6740.xstepad         EQUD xstep
 6750.ystepad         EQUD ystep
 6760.xboxat          EQUD xboxa
 6770.yboxat          EQUD yboxa
 6780.xboxbt          EQUD xboxb
 6790.yboxbt          EQUD yboxb
 6800:
 6810\ CHANGE MAXIMUM ITERATIONS
 6820.iterate         BL savescr
 6830                 SWI "OS_WriteS"
 6840                 EQUB31:EQUB1:EQUB1
 6850                 EQUB16:EQUB17:EQUB127:EQUS"Current Iterations: "
 6860                 EQUB 0
 6870                 ALIGN
 6880.iterloop        SWI "OS_WriteS"
 6890                 EQUB31:EQUB21:EQUB1
 6900.maxstr          EQUS "025"
 6910                 EQUB 0
 6920                 ALIGN
 6930.getkey          MOV R0,#&81
 6940                 MOV R1,#0
 6950                 MOV R2,#0
 6960                 SWI "OS_Byte"
 6970                 BCS getkey
 6980                 CMP R1,#13
 6990                 BEQ itergot
 7000                 CMP R1,#48
 7010                 BCC getkey
 7020                 CMP R1,#58
 7030                 BCS getkey
 7040                 ADR R0,maxstr
 7050                 LDRB R2,[R0,#1]
 7060                 STRB R2,[R0]
 7070                 LDRB R2,[R0,#2]
 7080                 STRB R2,[R0,#1]
 7090                 STRB R1,[R0,#2]
 7100                 B iterloop
 7110.itergot         ADR R0,maxstr
 7120                 LDRB R1,[R0]
 7130                 SUB R1,R1,#48
 7140                 MOV R2,#100
 7150                 MUL R3,R2,R1
 7160                 MOV R4,R3
 7170                 LDRB R1,[R0,#1]
 7180                 SUB R1,R1,#48
 7190                 MOV R2,#10
 7200                 MUL R3,R2,R1
 7210                 ADD R4,R4,R3
 7220                 LDRB R1,[R0,#2]
 7230                 SUB R1,R1,#48
 7240                 ADD R4,R4,R1
 7250                 ADR R0,maxiad
 7260                 LDR R0,[R0]
 7270                 STR R4,[R0]
 7280                 BL loadscr
 7290                 BL plotter
 7300                 B mploop
 7310.maxiad          EQUD maxit
 7320:
 7330\ COLOUR CYCLING
 7340:
 7350.colcycle        MOV R5,#0
 7360                 SWI "OS_Mouse"
 7370                 CMP R2,#0
 7380                 BNE colcycle
 7390                 BL savescr
 7400.cyloop          BL setcols
 7410                 ADD R5,R5,#1
 7420                 AND R5,R5,#255
 7430                 MOV R0,#0
 7440.wastetime       ADD R0,R0,#1
 7450                 CMP R0,#&1000
 7460                 BNE wastetime
 7470                 SWI "OS_Mouse"
 7480                 CMP R2,#0
 7490                 BEQ cyloop
 7500                 SWI "OS_WriteS"
 7510                 EQUB22:EQUB15:EQUB0
 7520                 ALIGN
 7530                 MOV R0,#106
 7540                 MOV R1,#1
 7550                 SWI "OS_Byte"
 7560                 BL loadscr
 7570                 B mploop
 7580:
 7590.setcols         MOV R4,#1
 7600.setloop         MOV R3,R4
 7610                 ADD R3,R3,R5
 7620                 AND R3,R3,#127
 7630                 ADR R2,(vducols+2)
 7640                 STRB R3,[R2]
 7650                 ADR R2,(vducols+1)
 7660                 STRB R4,[R2]
 7670                 SWI "OS_WriteS"
 7680.vducols         EQUB19:EQUB1:EQUB1:EQUB0
 7690                 SWI 256
 7700                 SWI 256
 7710                 SWI 256
 7720                 SWI 256
 7730                 ADD R4,R4,#1
 7740                 CMP R4,#256
 7750                 BNE setloop
 7760                 MOV PC,R14
 7770:
 7780\ SCREEN SAVE
 7790:
 7800.scrstore        ADR R0,ramdisc
 7810                 SWI "OS_CLI"
 7820                 ADR R0,scrsav
 7830                 SWI "OS_CLI"
 7840                 B mploop
 7850.ramdisc         EQUS"RAM":EQUD0
 7860.scrsav          EQUS"SCREENSAVE mandelscr":EQUD0
 7870:
 7880.screen
 7890]
 7900NEXT
 7910REMOSCLI ("MEMORYI "+STR$~zoomin+" + 100"):END
 7920ENDPROC

� 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=4 � 6 � 2
�P%=&8000:O%=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      "
R8         EQUB31:EQUB64:EQUB18:EQUS"Colour Cycling  "
\8         EQUB31:EQUB64:EQUB20:EQUS"Save Screen     "
f         EQUB17:EQUB6
p8         EQUB31:EQUB64:EQUB28:EQUS"Desktop         "
z8         EQUB31:EQUB64:EQUB30:EQUS"Quit Program    "
�!         EQUB17:EQUB128:EQUB0
�         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
8         SWI 256+1
B         SWI 256
L         SWI 256
V         SWI 256
`         SWI 256
j         SWI 256
t         SWI 256
~         SWI 256
�         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
2         CMP R0,#1024
<         BCC boxout
F         B function
P'.schoose EQUS "SCHOOSE logo":EQUD 0
Z         ALIGN
d.ploty   EQUD 775
n         ALIGN
x:
�.boxout  BL mousebox
�         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]
6         BL mousebox
@         BL contplot
J         BL mousebox
T         SWI "OS_Mouse"
^         CMP R2,#0
h         BNE boxoutl
r         ADR R2,wimpad
|         LDR R2,[R2]
�         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,#11
         BEQ scrstore
         CMP R1,#13
&         BEQ colcycle
0         CMP R1,#15
:         BEQ iterate
D         CMP R1,#19
N         BEQ resetpos
X         CMP R1,#21
b         BEQ zoomin
l         B mploop
v:
� \               Ș FUNCTIONS
�:
�.desktop LDMFD R13!,{PC}
�.quittask BL savescr
�         SWI 256+31
�         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
4         CMP R2,#1
>         BLEQ loadscr
H         BEQ mploop
R         B quitlop
\.quitokay LDMFD R13!,{R0}
f         MOV R0,#0
p         SUB R0,R0,#1
z         MOV R1,#0
�         MOV R2,#0
�         MOV R3,#1280
�         MOV R4,#1024
�#         SWI "Wimp_ForceRedraw"
�         SWI "OS_Exit"
�:
�\        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]
8#                 ADR R3,ystepad
B                  LDR R3,[R3]
L"                 ADR R4,xboxat
V                LDR R4,[R4]
`                  LDR R4,[R4]
j"                 ADR R5,xboxbt
t                  LDR R5,[R5]
~                  LDR R5,[R5]
�                 CMP R4,R5
�                  MOVCS R6,R4
�                  MOVCS R4,R5
�                  MOVCS R5,R6
�"                 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
2"EQUD &EE1A3101 \ MLFE F3,F2,F1
<"EQUD &EE0B3100 \ ADFE F3,F3,F0
FEQUD &EE0451D4 \ FLTE F4,R5
P"EQUD &EE1C5101 \ MLFE F5,F4,F1
Z"EQUD &EE0D5100 \ ADFE F5,F5,F0
d"EQUD &EE2D5103 \ SBFE F5,F5,F3
n!                 MOV R8,#1024
xEQUD &EE0681D6 \ FLTE F6,R8
�"EQUD &EE4D7106 \ DVFE F7,F5,F6
�!EQUD &ECE03100 \ STFE F3,[R0]
�!EQUD &ECE17100 \ STFE F7,[R1]
�:
�!EQUD &ECF20100 \ LDFE F0,[R2]
�!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
6:
@.xminad          EQUD xmin
J.yminad          EQUD ymin
T.xstepad         EQUD xstep
^.ystepad         EQUD ystep
h.xboxat          EQUD xboxa
r.yboxat          EQUD yboxa
|.xboxbt          EQUD xboxb
�.yboxbt          EQUD yboxb
�:
�\ CHANGE MAXIMUM ITERATIONS
�.iterate         BL savescr
�$                 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
0"                 SWI "OS_Byte"
:                 BCS getkey
D                 CMP R1,#13
N                  BEQ itergot
X                 CMP R1,#48
b                 BCC getkey
l                 CMP R1,#58
v                 BCS getkey
�"                 ADR R0,maxstr
�$                 LDRB R2,[R0,#1]
�!                 STRB R2,[R0]
�$                 LDRB R2,[R0,#2]
�$                 STRB R2,[R0,#1]
�$                 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
4$                 LDRB R1,[R0,#2]
>"                 SUB R1,R1,#48
H!                 ADD R4,R4,R1
R"                 ADR R0,maxiad
\                  LDR R0,[R0]
f                  STR R4,[R0]
p                 BL loadscr
z                 BL plotter
�                 B mploop
�.maxiad          EQUD maxit
�:
�\ � CYCLING
�:
�.colcycle        MOV R5,#0
�#                 SWI "OS_Mouse"
�                 CMP R2,#0
�!                 BNE colcycle
�                 BL savescr
�.cyloop          BL setcols
�!                 ADD R5,R5,#1
�!                 � R5,R5,#255
                 MOV R0,#0
!.wastetime       ADD R0,R0,#1
"                 CMP R0,#&1000
$"                 BNE wastetime
.#                 SWI "OS_Mouse"
8                 CMP R2,#0
B                 BEQ cyloop
L$                 SWI "OS_WriteS"
V(                 EQUB22:EQUB15:EQUB0
`                 ALIGN
j                  MOV R0,#106
t                 MOV R1,#1
~"                 SWI "OS_Byte"
�                 BL loadscr
�                 B mploop
�:
�.setcols         MOV R4,#1
�.setloop         MOV R3,R4
�!                 ADD R3,R3,R5
�!                 � R3,R3,#127
�'                 ADR R2,(vducols+2)
�!                 STRB R3,[R2]
�'                 ADR R2,(vducols+1)
�!                 STRB R4,[R2]
�$                 SWI "OS_WriteS"
-.vducols         EQUB19:EQUB1:EQUB1:EQUB0

                 SWI 256
                 SWI 256
                 SWI 256
(                 SWI 256
2!                 ADD R4,R4,#1
<                  CMP R4,#256
F                  BNE setloop
P                 MOV PC,R14
Z:
d\ SCREEN ǚ
n:
x#.scrstore        ADR R0,ramdisc
�!                 SWI "OS_CLI"
�"                 ADR R0,scrsav
�!                 SWI "OS_CLI"
�                 B mploop
�$.ramdisc         EQUS"RAM":EQUD0
�5.scrsav          EQUS"SCREENSAVE mandelscr":EQUD0
�:
�.screen
�]
��
�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 34 20 b8 20 36  |..:..... p=4 . 6|
000000e0  20 88 20 32 0d 00 c8 15  50 25 3d 26 38 30 30 30  | . 2....P%=&8000|
000000f0  3a 4f 25 3d 73 70 61 63  65 0d 00 d2 0a 5b 4f 50  |:O%=space....[OP|
00000100  54 20 70 0d 00 dc 05 3a  0d 00 e6 13 5c 20 54 41  |T p....:....\ TA|
00000110  53 4b 20 53 54 41 52 54  2d 55 50 0d 00 f0 1c 2e  |SK START-UP.....|
00000120  73 74 61 72 74 20 20 20  20 20 20 20 20 20 20 42  |start          B|
00000130  4c 20 73 65 74 75 70 0d  00 fa 1d 20 20 20 20 20  |L setup....     |
00000140  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |           MOV R|
00000150  30 2c 23 33 0d 01 04 22  20 20 20 20 20 20 20 20  |0,#3..."        |
00000160  20 20 20 20 20 20 20 20  4d 4f 56 20 52 31 2c 23  |        MOV R1,#|
00000170  26 32 38 30 30 30 0d 01  0e 2e 20 20 20 20 20 20  |&28000....      |
00000180  20 20 20 20 20 20 20 20  20 20 53 57 49 20 22 4f  |          SWI "O|
00000190  53 5f 43 68 61 6e 67 65  44 79 6e 61 6d 69 63 41  |S_ChangeDynamicA|
000001a0  72 65 61 22 0d 01 18 20  20 20 20 20 20 20 20 20  |rea"...         |
000001b0  20 20 20 20 20 20 20 20  41 44 52 20 52 30 2c 73  |        ADR R0,s|
000001c0  6c 6f 61 64 0d 01 22 20  20 20 20 20 20 20 20 20  |load.."         |
000001d0  20 20 20 20 20 20 20 20  53 57 49 20 22 4f 53 5f  |        SWI "OS_|
000001e0  43 4c 49 22 0d 01 2c 23  20 20 20 20 20 20 20 20  |CLI"..,#        |
000001f0  20 20 20 20 20 20 20 20  41 44 52 20 52 30 2c 73  |        ADR R0,s|
00000200  74 61 72 74 73 70 72 0d  01 36 20 20 20 20 20 20  |tartspr..6      |
00000210  20 20 20 20 20 20 20 20  20 20 20 53 57 49 20 22  |           SWI "|
00000220  4f 53 5f 43 4c 49 22 0d  01 40 1e 20 20 20 20 20  |OS_CLI"..@.     |
00000230  20 20 20 20 20 20 20 20  20 20 20 53 57 49 20 32  |           SWI 2|
00000240  35 36 2b 32 32 0d 01 4a  1e 20 20 20 20 20 20 20  |56+22..J.       |
00000250  20 20 20 20 20 20 20 20  20 53 57 49 20 32 35 36  |         SWI 256|
00000260  2b 31 35 0d 01 54 1f 20  20 20 20 20 20 20 20 20  |+15..T.         |
00000270  20 20 20 20 20 20 20 4d  4f 56 20 52 30 2c 23 26  |       MOV R0,#&|
00000280  45 44 0d 01 5e 1f 20 20  20 20 20 20 20 20 20 20  |ED..^.          |
00000290  20 20 20 20 20 20 4d 4f  56 20 52 31 2c 23 26 38  |      MOV R1,#&8|
000002a0  30 0d 01 68 20 20 20 20  20 20 20 20 20 20 20 20  |0..h            |
000002b0  20 20 20 20 20 4d 4f 56  20 52 32 2c 23 26 31 30  |     MOV R2,#&10|
000002c0  30 0d 01 72 21 20 20 20  20 20 20 20 20 20 20 20  |0..r!           |
000002d0  20 20 20 20 20 53 57 49  20 22 4f 53 5f 50 6c 6f  |     SWI "OS_Plo|
000002e0  74 22 0d 01 7c 22 2e 73  74 61 72 74 73 70 6c 6f  |t"..|".startsplo|
000002f0  6f 70 20 20 20 20 53 57  49 20 22 4f 53 5f 4d 6f  |op    SWI "OS_Mo|
00000300  75 73 65 22 0d 01 86 1d  20 20 20 20 20 20 20 20  |use"....        |
00000310  20 20 20 20 20 20 20 20  43 4d 50 20 52 32 2c 23  |        CMP R2,#|
00000320  30 0d 01 90 23 20 20 20  20 20 20 20 20 20 20 20  |0...#           |
00000330  20 20 20 20 20 42 45 51  20 73 74 61 72 74 73 70  |     BEQ startsp|
00000340  6c 6f 6f 70 0d 01 9a 1f  20 20 20 20 20 20 20 20  |loop....        |
00000350  20 20 20 20 20 20 20 20  4d 4f 56 20 52 30 2c 23  |        MOV R0,#|
00000360  32 30 30 0d 01 a4 21 20  20 20 20 20 20 20 20 20  |200...!         |
00000370  20 20 20 20 20 20 20 41  44 52 20 52 31 2c 74 61  |       ADR R1,ta|
00000380  73 6b 6e 6f 0d 01 ae 1f  20 20 20 20 20 20 20 20  |skno....        |
00000390  20 20 20 20 20 20 20 20  4c 44 52 20 52 31 2c 5b  |        LDR R1,[|
000003a0  52 31 5d 0d 01 b8 23 20  20 20 20 20 20 20 20 20  |R1]...#         |
000003b0  20 20 20 20 20 20 20 41  44 52 20 52 32 2c 74 61  |       ADR R2,ta|
000003c0  73 6b 6e 61 6d 65 0d 01  c2 29 20 20 20 20 20 20  |skname...)      |
000003d0  20 20 20 20 20 20 20 20  20 20 53 57 49 20 22 57  |          SWI "W|
000003e0  69 6d 70 5f 49 6e 69 74  69 61 6c 69 73 65 22 0d  |imp_Initialise".|
000003f0  01 cc 1d 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00000400  20 20 20 4d 4f 56 20 52  30 2c 23 30 0d 01 d6 22  |   MOV R0,#0..."|
00000410  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000420  41 44 52 20 52 31 2c 73  70 72 69 6e 66 6f 0d 01  |ADR R1,sprinfo..|
00000430  e0 29 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.)              |
00000440  20 20 53 57 49 20 22 57  69 6d 70 5f 43 72 65 61  |  SWI "Wimp_Crea|
00000450  74 65 49 63 6f 6e 22 0d  01 ea 21 20 20 20 20 20  |teIcon"...!     |
00000460  20 20 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |           ADR R|
00000470  31 2c 73 70 72 6e 75 6d  0d 01 f4 1f 20 20 20 20  |1,sprnum....    |
00000480  20 20 20 20 20 20 20 20  20 20 20 20 53 54 52 20  |            STR |
00000490  52 30 2c 5b 52 31 5d 0d  01 fe 1d 20 20 20 20 20  |R0,[R1]....     |
000004a0  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |           MOV R|
000004b0  30 2c 23 30 0d 02 08 20  20 20 20 20 20 20 20 20  |0,#0...         |
000004c0  20 20 20 20 20 20 20 20  53 55 42 20 52 30 2c 52  |        SUB R0,R|
000004d0  30 2c 23 31 0d 02 12 1d  20 20 20 20 20 20 20 20  |0,#1....        |
000004e0  20 20 20 20 20 20 20 20  4d 4f 56 20 52 31 2c 23  |        MOV R1,#|
000004f0  30 0d 02 1c 1d 20 20 20  20 20 20 20 20 20 20 20  |0....           |
00000500  20 20 20 20 20 4d 4f 56  20 52 32 2c 23 30 0d 02  |     MOV R2,#0..|
00000510  26 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |&               |
00000520  20 20 4d 4f 56 20 52 33  2c 23 31 32 38 30 0d 02  |  MOV R3,#1280..|
00000530  30 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |0               |
00000540  20 20 4d 4f 56 20 52 34  2c 23 31 30 32 34 0d 02  |  MOV R4,#1024..|
00000550  3a 2a 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |:*              |
00000560  20 20 53 57 49 20 22 57  69 6d 70 5f 46 6f 72 63  |  SWI "Wimp_Forc|
00000570  65 52 65 64 72 61 77 22  0d 02 44 1d 2e 6d 61 69  |eRedraw"..D..mai|
00000580  6e 6c 6f 6f 70 20 20 20  20 20 20 20 4d 4f 56 20  |nloop       MOV |
00000590  52 30 2c 23 30 0d 02 4e  22 20 20 20 20 20 20 20  |R0,#0..N"       |
000005a0  20 20 20 20 20 20 20 20  20 41 44 52 20 52 31 2c  |         ADR R1,|
000005b0  71 62 75 66 66 65 72 0d  02 58 23 20 20 20 20 20  |qbuffer..X#     |
000005c0  20 20 20 20 20 20 20 20  20 20 20 53 57 49 20 22  |           SWI "|
000005d0  57 69 6d 70 5f 50 6f 6c  6c 22 0d 02 62 1e 20 20  |Wimp_Poll"..b.  |
000005e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 4d  |              CM|
000005f0  50 20 52 30 2c 23 31 37  0d 02 6c 21 20 20 20 20  |P R0,#17..l!    |
00000600  20 20 20 20 20 20 20 20  20 20 20 20 42 45 51 20  |            BEQ |
00000610  71 75 69 74 63 68 65 63  6b 0d 02 76 1e 20 20 20  |quitcheck..v.   |
00000620  20 20 20 20 20 20 20 20  20 20 20 20 20 43 4d 50  |             CMP|
00000630  20 52 30 2c 23 31 38 0d  02 80 21 20 20 20 20 20  | R0,#18...!     |
00000640  20 20 20 20 20 20 20 20  20 20 20 42 45 51 20 71  |           BEQ q|
00000650  75 69 74 63 68 65 63 6b  0d 02 8a 1d 2e 6e 6f 74  |uitcheck.....not|
00000660  71 75 69 74 74 65 64 20  20 20 20 20 43 4d 50 20  |quitted     CMP |
00000670  52 30 2c 23 36 0d 02 94  21 20 20 20 20 20 20 20  |R0,#6...!       |
00000680  20 20 20 20 20 20 20 20  20 42 4e 45 20 6e 6f 74  |         BNE not|
00000690  61 63 74 69 76 65 0d 02  9e 22 20 20 20 20 20 20  |active..."      |
000006a0  20 20 20 20 20 20 20 20  20 20 41 44 52 20 52 31  |          ADR R1|
000006b0  2c 71 62 75 66 66 65 72  0d 02 a8 1e 20 20 20 20  |,qbuffer....    |
000006c0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
000006d0  52 32 2c 23 31 32 0d 02  b2 22 20 20 20 20 20 20  |R2,#12..."      |
000006e0  20 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 33  |          LDR R3|
000006f0  2c 5b 52 31 2c 52 32 5d  0d 02 bc 20 20 20 20 20  |,[R1,R2]...     |
00000700  20 20 20 20 20 20 20 20  20 20 20 20 41 44 44 20  |            ADD |
00000710  52 33 2c 52 33 2c 23 32  0d 02 c6 1d 20 20 20 20  |R3,R3,#2....    |
00000720  20 20 20 20 20 20 20 20  20 20 20 20 43 4d 50 20  |            CMP |
00000730  52 33 2c 23 30 0d 02 d0  21 20 20 20 20 20 20 20  |R3,#0...!       |
00000740  20 20 20 20 20 20 20 20  20 42 4e 45 20 6e 6f 74  |         BNE not|
00000750  61 63 74 69 76 65 0d 02  da 1f 20 20 20 20 20 20  |active....      |
00000760  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 32  |          MOV R2|
00000770  2c 23 26 31 30 0d 02 e4  22 20 20 20 20 20 20 20  |,#&10..."       |
00000780  20 20 20 20 20 20 20 20  20 4c 44 52 20 52 33 2c  |         LDR R3,|
00000790  5b 52 31 2c 52 32 5d 0d  02 ee 21 20 20 20 20 20  |[R1,R2]...!     |
000007a0  20 20 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |           ADR R|
000007b0  34 2c 73 70 72 6e 75 6d  0d 02 f8 1f 20 20 20 20  |4,sprnum....    |
000007c0  20 20 20 20 20 20 20 20  20 20 20 20 4c 44 52 20  |            LDR |
000007d0  52 34 2c 5b 52 34 5d 0d  03 02 1d 20 20 20 20 20  |R4,[R4]....     |
000007e0  20 20 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |           CMP R|
000007f0  33 2c 52 34 0d 03 0c 21  20 20 20 20 20 20 20 20  |3,R4...!        |
00000800  20 20 20 20 20 20 20 20  42 4e 45 20 6e 6f 74 61  |        BNE nota|
00000810  63 74 69 76 65 0d 03 16  22 2e 6d 6f 75 73 65 77  |ctive...".mousew|
00000820  61 69 74 20 20 20 20 20  20 53 57 49 20 22 4f 53  |ait      SWI "OS|
00000830  5f 4d 6f 75 73 65 22 0d  03 20 1d 20 20 20 20 20  |_Mouse".. .     |
00000840  20 20 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |           CMP R|
00000850  32 2c 23 30 0d 03 2a 21  20 20 20 20 20 20 20 20  |2,#0..*!        |
00000860  20 20 20 20 20 20 20 20  42 4e 45 20 6d 6f 75 73  |        BNE mous|
00000870  65 77 61 69 74 0d 03 34  1d 20 20 20 20 20 20 20  |ewait..4.       |
00000880  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 30 2c  |         MOV R0,|
00000890  23 30 0d 03 3e 23 20 20  20 20 20 20 20 20 20 20  |#0..>#          |
000008a0  20 20 20 20 20 20 41 44  52 20 52 31 2c 77 69 6d  |      ADR R1,wim|
000008b0  70 73 74 61 74 0d 03 48  1f 20 20 20 20 20 20 20  |pstat..H.       |
000008c0  20 20 20 20 20 20 20 20  20 53 54 52 20 52 30 2c  |         STR R0,|
000008d0  5b 52 31 5d 0d 03 52 1f  20 20 20 20 20 20 20 20  |[R1]..R.        |
000008e0  20 20 20 20 20 20 20 20  41 44 52 20 52 30 2c 70  |        ADR R0,p|
000008f0  72 65 76 0d 03 5c 1f 20  20 20 20 20 20 20 20 20  |rev..\.         |
00000900  20 20 20 20 20 20 20 4c  44 52 20 52 30 2c 5b 52  |       LDR R0,[R|
00000910  30 5d 0d 03 66 1d 20 20  20 20 20 20 20 20 20 20  |0]..f.          |
00000920  20 20 20 20 20 20 43 4d  50 20 52 30 2c 23 30 0d  |      CMP R0,#0.|
00000930  03 70 1d 20 20 20 20 20  20 20 20 20 20 20 20 20  |.p.             |
00000940  20 20 20 42 45 51 20 66  69 72 73 74 0d 03 7a 1e  |   BEQ first..z.|
00000950  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000960  42 4c 20 72 65 73 74 61  72 74 0d 03 84 1d 20 20  |BL restart....  |
00000970  20 20 20 20 20 20 20 20  20 20 20 20 20 20 42 20  |              B |
00000980  61 63 74 69 76 65 63 0d  03 8e 1e 2e 66 69 72 73  |activec.....firs|
00000990  74 20 20 20 20 20 20 20  20 20 20 42 4c 20 73 74  |t          BL st|
000009a0  61 72 74 75 70 0d 03 98  21 2e 61 63 74 69 76 65  |artup...!.active|
000009b0  63 20 20 20 20 20 20 20  20 42 4c 20 6d 61 6e 64  |c        BL mand|
000009c0  65 6c 70 6c 6f 74 0d 03  a2 1e 20 20 20 20 20 20  |elplot....      |
000009d0  20 20 20 20 20 20 20 20  20 20 42 4c 20 73 61 76  |          BL sav|
000009e0  65 73 63 72 0d 03 ac 1d  20 20 20 20 20 20 20 20  |escr....        |
000009f0  20 20 20 20 20 20 20 20  4d 4f 56 20 52 30 2c 23  |        MOV R0,#|
00000a00  30 0d 03 b6 20 20 20 20  20 20 20 20 20 20 20 20  |0...            |
00000a10  20 20 20 20 20 53 55 42  20 52 30 2c 52 30 2c 23  |     SUB R0,R0,#|
00000a20  31 0d 03 c0 1d 20 20 20  20 20 20 20 20 20 20 20  |1....           |
00000a30  20 20 20 20 20 4d 4f 56  20 52 31 2c 23 30 0d 03  |     MOV R1,#0..|
00000a40  ca 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00000a50  20 20 4d 4f 56 20 52 32  2c 23 30 0d 03 d4 20 20  |  MOV R2,#0...  |
00000a60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00000a70  4f 56 20 52 33 2c 23 31  32 38 30 0d 03 de 20 20  |OV R3,#1280...  |
00000a80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00000a90  4f 56 20 52 34 2c 23 31  30 32 34 0d 03 e8 2a 20  |OV R4,#1024...* |
00000aa0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
00000ab0  57 49 20 22 57 69 6d 70  5f 46 6f 72 63 65 52 65  |WI "Wimp_ForceRe|
00000ac0  64 72 61 77 22 0d 03 f2  1f 2e 6e 6f 74 61 63 74  |draw".....notact|
00000ad0  69 76 65 20 20 20 20 20  20 41 44 52 20 52 30 2c  |ive      ADR R0,|
00000ae0  70 72 65 76 0d 03 fc 1f  20 20 20 20 20 20 20 20  |prev....        |
00000af0  20 20 20 20 20 20 20 20  4c 44 52 20 52 30 2c 5b  |        LDR R0,[|
00000b00  52 30 5d 0d 04 06 1d 20  20 20 20 20 20 20 20 20  |R0]....         |
00000b10  20 20 20 20 20 20 20 43  4d 50 20 52 30 2c 23 31  |       CMP R0,#1|
00000b20  0d 04 10 23 20 20 20 20  20 20 20 20 20 20 20 20  |...#            |
00000b30  20 20 20 20 42 4e 45 20  6e 6f 65 78 74 72 61 70  |    BNE noextrap|
00000b40  6c 6f 74 0d 04 1a 23 20  20 20 20 20 20 20 20 20  |lot...#         |
00000b50  20 20 20 20 20 20 20 41  44 52 20 52 30 2c 70 6c  |       ADR R0,pl|
00000b60  6f 74 73 74 61 74 0d 04  24 1f 20 20 20 20 20 20  |otstat..$.      |
00000b70  20 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 30  |          LDR R0|
00000b80  2c 5b 52 30 5d 0d 04 2e  1d 20 20 20 20 20 20 20  |,[R0]....       |
00000b90  20 20 20 20 20 20 20 20  20 43 4d 50 20 52 30 2c  |         CMP R0,|
00000ba0  23 31 0d 04 38 23 20 20  20 20 20 20 20 20 20 20  |#1..8#          |
00000bb0  20 20 20 20 20 20 42 4e  45 20 6e 6f 65 78 74 72  |      BNE noextr|
00000bc0  61 70 6c 6f 74 0d 04 42  1d 20 20 20 20 20 20 20  |aplot..B.       |
00000bd0  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 30 2c  |         MOV R0,|
00000be0  23 31 0d 04 4c 23 20 20  20 20 20 20 20 20 20 20  |#1..L#          |
00000bf0  20 20 20 20 20 20 41 44  52 20 52 31 2c 77 69 6d  |      ADR R1,wim|
00000c00  70 73 74 61 74 0d 04 56  1f 20 20 20 20 20 20 20  |pstat..V.       |
00000c10  20 20 20 20 20 20 20 20  20 53 54 52 20 52 30 2c  |         STR R0,|
00000c20  5b 52 31 5d 0d 04 60 1f  20 20 20 20 20 20 20 20  |[R1]..`.        |
00000c30  20 20 20 20 20 20 20 20  42 4c 20 63 6f 6e 74 70  |        BL contp|
00000c40  6c 6f 74 0d 04 6a 23 20  20 20 20 20 20 20 20 20  |lot..j#         |
00000c50  20 20 20 20 20 20 20 41  44 52 20 52 31 2c 70 6c  |       ADR R1,pl|
00000c60  6f 74 73 74 61 74 0d 04  74 1f 20 20 20 20 20 20  |otstat..t.      |
00000c70  20 20 20 20 20 20 20 20  20 20 53 54 52 20 52 30  |          STR R0|
00000c80  2c 5b 52 31 5d 0d 04 7e  1e 2e 6e 6f 65 78 74 72  |,[R1]..~..noextr|
00000c90  61 70 6c 6f 74 20 20 20  20 42 20 6d 61 69 6e 6c  |aplot    B mainl|
00000ca0  6f 6f 70 0d 04 88 22 2e  71 75 69 74 63 68 65 63  |oop...".quitchec|
00000cb0  6b 20 20 20 20 20 20 41  44 52 20 52 31 2c 71 62  |k      ADR R1,qb|
00000cc0  75 66 66 65 72 0d 04 92  1f 20 20 20 20 20 20 20  |uffer....       |
00000cd0  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 32 2c  |         MOV R2,|
00000ce0  23 26 31 30 0d 04 9c 22  20 20 20 20 20 20 20 20  |#&10..."        |
00000cf0  20 20 20 20 20 20 20 20  4c 44 52 20 52 32 2c 5b  |        LDR R2,[|
00000d00  52 31 2c 52 32 5d 0d 04  a6 1d 20 20 20 20 20 20  |R1,R2]....      |
00000d10  20 20 20 20 20 20 20 20  20 20 43 4d 50 20 52 32  |          CMP R2|
00000d20  2c 23 30 0d 04 b0 22 20  20 20 20 20 20 20 20 20  |,#0..."         |
00000d30  20 20 20 20 20 20 20 42  4e 45 20 6e 6f 74 71 75  |       BNE notqu|
00000d40  69 74 74 65 64 0d 04 ba  21 20 20 20 20 20 20 20  |itted...!       |
00000d50  20 20 20 20 20 20 20 20  20 53 57 49 20 22 4f 53  |         SWI "OS|
00000d60  5f 45 78 69 74 22 0d 04  c4 3b 2e 73 6c 6f 61 64  |_Exit"...;.sload|
00000d70  20 20 20 20 20 20 20 20  20 20 45 51 55 53 20 22  |          EQUS "|
00000d80  53 4c 4f 41 44 20 3c 4f  62 65 79 24 44 69 72 3e  |SLOAD <Obey$Dir>|
00000d90  2e 21 53 70 72 69 74 65  73 22 3a 45 51 55 44 20  |.!Sprites":EQUD |
00000da0  30 0d 04 ce 19 20 20 20  20 20 20 20 20 20 20 20  |0....           |
00000db0  20 20 20 20 20 41 4c 49  47 4e 0d 04 d8 2c 2e 74  |     ALIGN...,.t|
00000dc0  61 73 6b 6e 61 6d 65 20  20 20 20 20 20 20 45 51  |askname       EQ|
00000dd0  55 53 20 22 4d 61 6e 64  65 6c 50 6c 6f 74 22 3a  |US "MandelPlot":|
00000de0  45 51 55 44 20 30 0d 04  e2 19 20 20 20 20 20 20  |EQUD 0....      |
00000df0  20 20 20 20 20 20 20 20  20 20 41 4c 49 47 4e 0d  |          ALIGN.|
00000e00  04 ec 22 2e 74 61 73 6b  6e 6f 20 20 20 20 20 20  |..".taskno      |
00000e10  20 20 20 45 51 55 44 20  26 34 42 35 33 34 31 35  |   EQUD &4B53415|
00000e20  34 0d 04 f6 19 20 20 20  20 20 20 20 20 20 20 20  |4....           |
00000e30  20 20 20 20 20 41 4c 49  47 4e 0d 05 00 42 2e 73  |     ALIGN...B.s|
00000e40  70 72 69 6e 66 6f 20 20  20 20 20 20 20 20 45 51  |prinfo        EQ|
00000e50  55 44 20 26 46 46 46 46  46 46 46 46 3a 45 51 55  |UD &FFFFFFFF:EQU|
00000e60  44 20 30 3a 45 51 55 44  20 30 3a 45 51 55 44 20  |D 0:EQUD 0:EQUD |
00000e70  26 36 34 3a 45 51 55 44  20 26 34 34 0d 05 0a 46  |&64:EQUD &44...F|
00000e80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000e90  45 51 55 44 20 26 31 31  30 30 33 30 32 41 3a 45  |EQUD &1100302A:E|
00000ea0  51 55 44 20 26 36 45 36  31 36 44 32 31 3a 45 51  |QUD &6E616D21:EQ|
00000eb0  55 44 20 26 36 43 36 35  36 34 3a 45 51 55 44 20  |UD &6C6564:EQUD |
00000ec0  26 44 0d 05 14 19 20 20  20 20 20 20 20 20 20 20  |&D....          |
00000ed0  20 20 20 20 20 20 41 4c  49 47 4e 0d 05 1e 1a 2e  |      ALIGN.....|
00000ee0  73 70 72 6e 75 6d 20 20  20 20 20 20 20 20 20 45  |sprnum         E|
00000ef0  51 55 44 20 30 0d 05 28  19 20 20 20 20 20 20 20  |QUD 0..(.       |
00000f00  20 20 20 20 20 20 20 20  20 41 4c 49 47 4e 0d 05  |         ALIGN..|
00000f10  32 47 2e 71 62 75 66 66  65 72 20 20 20 20 20 20  |2G.qbuffer      |
00000f20  20 20 45 51 55 53 22 20  20 20 20 20 20 20 20 20  |  EQUS"         |
00000f30  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00000f50  20 20 20 20 22 0d 05 3c  19 20 20 20 20 20 20 20  |    "..<.       |
00000f60  20 20 20 20 20 20 20 20  20 41 4c 49 47 4e 0d 05  |         ALIGN..|
00000f70  46 1a 2e 77 69 6d 70 73  74 61 74 20 20 20 20 20  |F..wimpstat     |
00000f80  20 20 45 51 55 44 20 30  0d 05 50 19 20 20 20 20  |  EQUD 0..P.    |
00000f90  20 20 20 20 20 20 20 20  20 20 20 20 41 4c 49 47  |            ALIG|
00000fa0  4e 0d 05 5a 31 2e 73 74  61 72 74 73 70 72 20 20  |N..Z1.startspr  |
00000fb0  20 20 20 20 20 45 51 55  53 20 22 53 43 48 4f 4f  |     EQUS "SCHOO|
00000fc0  53 45 20 73 74 61 72 74  75 70 22 3a 45 51 55 44  |SE startup":EQUD|
00000fd0  20 30 0d 05 64 19 20 20  20 20 20 20 20 20 20 20  | 0..d.          |
00000fe0  20 20 20 20 20 20 41 4c  49 47 4e 0d 05 6e 05 3a  |      ALIGN..n.:|
00000ff0  0d 05 78 20 5c 20 4d 41  4e 44 45 4c 42 52 4f 54  |..x \ MANDELBROT|
00001000  20 53 45 54 20 43 41 4c  43 55 4c 41 54 49 4f 4e  | SET CALCULATION|
00001010  0d 05 82 10 5c 20 52 31  3d 78 20 7c 52 32 3d 79  |....\ R1=x |R2=y|
00001020  0d 05 8c 05 3a 0d 05 96  0d 5c 20 46 30 3d 78 70  |....:....\ F0=xp|
00001030  6f 73 0d 05 a0 0d 5c 20  46 31 3d 79 70 6f 73 0d  |os....\ F1=ypos.|
00001040  05 aa 0a 5c 20 46 32 3d  75 0d 05 b4 0a 5c 20 46  |...\ F2=u....\ F|
00001050  33 3d 76 0d 05 be 05 3a  0d 05 c8 25 2e 6d 61 6e  |3=v....:...%.man|
00001060  64 70 69 78 20 20 20 20  20 20 20 20 20 53 54 4d  |dpix         STM|
00001070  46 44 20 52 31 33 21 2c  7b 52 31 34 7d 0d 05 d2  |FD R13!,{R14}...|
00001080  1f 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001090  20 20 4d 4f 56 20 52 31  31 2c 23 30 0d 05 dc 47  |  MOV R11,#0...G|
000010a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000010b0  20 41 44 52 20 52 30 2c  78 6d 69 6e 20 20 20 20  | ADR R0,xmin    |
000010c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000010d0  5c 20 47 65 74 20 58 20  63 6f 2d 6f 72 64 69 6e  |\ Get X co-ordin|
000010e0  61 74 65 0d 05 e6 21 45  51 55 44 20 26 45 43 46  |ate...!EQUD &ECF|
000010f0  30 30 31 30 30 20 5c 20  4c 44 46 45 20 46 30 2c  |00100 \ LDFE F0,|
00001100  5b 52 30 5d 0d 05 f0 21  20 20 20 20 20 20 20 20  |[R0]...!        |
00001110  20 20 20 20 20 20 20 20  20 41 44 52 20 52 30 2c  |         ADR R0,|
00001120  78 73 74 65 70 0d 05 fa  21 45 51 55 44 20 26 45  |xstep...!EQUD &E|
00001130  43 46 30 31 31 30 30 20  5c 20 4c 44 46 45 20 46  |CF01100 \ LDFE F|
00001140  31 2c 5b 52 30 5d 0d 06  04 1f 45 51 55 44 20 26  |1,[R0]....EQUD &|
00001150  45 45 30 37 31 31 44 37  20 5c 20 46 4c 54 45 20  |EE0711D7 \ FLTE |
00001160  46 37 2c 52 31 0d 06 0e  22 45 51 55 44 20 26 45  |F7,R1..."EQUD &E|
00001170  45 31 39 32 31 30 37 20  5c 20 4d 4c 46 45 20 46  |E192107 \ MLFE F|
00001180  32 2c 46 31 2c 46 37 0d  06 18 22 45 51 55 44 20  |2,F1,F7..."EQUD |
00001190  26 45 45 30 38 30 31 30  32 20 5c 20 41 44 46 45  |&EE080102 \ ADFE|
000011a0  20 46 30 2c 46 30 2c 46  32 0d 06 22 05 3a 0d 06  | F0,F0,F2..".:..|
000011b0  2c 47 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |,G              |
000011c0  20 20 20 41 44 52 20 52  30 2c 79 6d 69 6e 20 20  |   ADR R0,ymin  |
000011d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000011e0  20 20 5c 20 47 65 74 20  59 20 63 6f 2d 6f 72 64  |  \ Get Y co-ord|
000011f0  69 6e 61 74 65 0d 06 36  21 45 51 55 44 20 26 45  |inate..6!EQUD &E|
00001200  43 46 30 31 31 30 30 20  5c 20 4c 44 46 45 20 46  |CF01100 \ LDFE F|
00001210  31 2c 5b 52 30 5d 0d 06  40 21 20 20 20 20 20 20  |1,[R0]..@!      |
00001220  20 20 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |           ADR R|
00001230  30 2c 79 73 74 65 70 0d  06 4a 21 45 51 55 44 20  |0,ystep..J!EQUD |
00001240  26 45 43 46 30 32 31 30  30 20 5c 20 4c 44 46 45  |&ECF02100 \ LDFE|
00001250  20 46 32 2c 5b 52 30 5d  0d 06 54 1f 45 51 55 44  | F2,[R0]..T.EQUD|
00001260  20 26 45 45 30 37 32 31  44 37 20 5c 20 46 4c 54  | &EE0721D7 \ FLT|
00001270  45 20 46 37 2c 52 32 0d  06 5e 22 45 51 55 44 20  |E F7,R2..^"EQUD |
00001280  26 45 45 31 41 33 31 30  37 20 5c 20 4d 4c 46 45  |&EE1A3107 \ MLFE|
00001290  20 46 33 2c 46 32 2c 46  37 0d 06 68 22 45 51 55  | F3,F2,F7..h"EQU|
000012a0  44 20 26 45 45 30 39 31  31 30 33 20 5c 20 41 44  |D &EE091103 \ AD|
000012b0  46 45 20 46 31 2c 46 31  2c 46 33 0d 06 72 05 3a  |FE F1,F1,F3..r.:|
000012c0  0d 06 7c 1f 45 51 55 44  20 26 45 45 30 38 41 31  |..|.EQUD &EE08A1|
000012d0  30 30 20 5c 20 4d 56 46  45 20 46 32 2c 46 30 0d  |00 \ MVFE F2,F0.|
000012e0  06 86 1f 45 51 55 44 20  26 45 45 30 38 42 31 30  |...EQUD &EE08B10|
000012f0  31 5c 20 20 4d 56 46 45  20 46 33 2c 46 31 0d 06  |1\  MVFE F3,F1..|
00001300  90 0c 2e 70 69 78 6c 6f  6f 70 0d 06 9a 35 45 51  |...pixloop...5EQ|
00001310  55 44 20 26 45 45 31 41  34 31 30 32 20 5c 20 4d  |UD &EE1A4102 \ M|
00001320  4c 46 45 20 46 34 2c 46  32 2c 46 32 20 20 20 20  |LFE F4,F2,F2    |
00001330  20 20 20 20 5c 20 46 69  6e 69 73 68 65 64 3f 0d  |    \ Finished?.|
00001340  06 a4 22 45 51 55 44 20  26 45 45 31 42 35 31 30  |.."EQUD &EE1B510|
00001350  33 20 5c 20 4d 4c 46 45  20 46 35 2c 46 33 2c 46  |3 \ MLFE F5,F3,F|
00001360  33 0d 06 ae 22 45 51 55  44 20 26 45 45 30 43 36  |3..."EQUD &EE0C6|
00001370  31 30 35 20 5c 20 41 44  46 45 20 46 36 2c 46 34  |105 \ ADFE F6,F4|
00001380  2c 46 35 0d 06 b8 37 45  51 55 44 20 26 45 45 44  |,F5...7EQUD &EED|
00001390  36 46 31 31 43 20 5c 20  43 4d 46 45 20 46 36 2c  |6F11C \ CMFE F6,|
000013a0  23 34 20 20 20 20 20 20  20 20 20 20 20 5c 20 75  |#4           \ u|
000013b0  5e 32 2b 76 5e 32 3e 34  20 3f 0d 06 c2 1e 20 20  |^2+v^2>4 ?....  |
000013c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
000013d0  43 53 20 66 6f 75 6e 64  0d 06 cc 23 20 20 20 20  |CS found...#    |
000013e0  20 20 20 20 20 20 20 20  20 20 20 20 20 41 44 44  |             ADD|
000013f0  20 52 31 31 2c 52 31 31  2c 23 31 0d 06 d6 21 20  | R11,R11,#1...! |
00001400  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001410  41 44 52 20 52 33 2c 6d  61 78 69 74 0d 06 e0 21  |ADR R3,maxit...!|
00001420  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001430  20 4c 44 52 20 52 31 30  2c 5b 52 33 5d 0d 06 ea  | LDR R10,[R3]...|
00001440  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001450  20 20 43 4d 50 20 52 31  31 2c 52 31 30 0d 06 f4  |  CMP R11,R10...|
00001460  1e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001470  20 20 42 45 51 20 66 6f  75 6e 64 0d 06 fe 3f 45  |  BEQ found...?E|
00001480  51 55 44 20 26 45 45 32  43 36 31 30 35 20 5c 20  |QUD &EE2C6105 \ |
00001490  53 42 46 45 20 46 36 2c  46 34 2c 46 35 20 20 20  |SBFE F6,F4,F5   |
000014a0  20 20 20 20 20 20 20 20  20 20 20 20 20 5c 20 75  |             \ u|
000014b0  3d 75 5e 32 2d 76 5e 32  2b 78 0d 07 08 22 45 51  |=u^2-v^2+x..."EQ|
000014c0  55 44 20 26 45 45 30 45  36 31 30 30 20 5c 20 41  |UD &EE0E6100 \ A|
000014d0  44 46 45 20 46 36 2c 46  36 2c 46 30 0d 07 12 3b  |DFE F6,F6,F0...;|
000014e0  45 51 55 44 20 26 45 45  31 41 34 31 30 33 20 5c  |EQUD &EE1A4103 \|
000014f0  20 4d 4c 46 45 20 46 34  2c 46 32 2c 46 33 20 20  | MLFE F4,F2,F3  |
00001500  20 20 20 20 20 20 20 20  20 20 20 20 20 20 5c 20  |              \ |
00001510  76 3d 32 75 76 2b 79 0d  07 1c 22 45 51 55 44 20  |v=2uv+y..."EQUD |
00001520  26 45 45 30 43 34 31 30  34 20 5c 20 41 44 46 45  |&EE0C4104 \ ADFE|
00001530  20 46 34 2c 46 34 2c 46  34 0d 07 26 22 45 51 55  | F4,F4,F4..&"EQU|
00001540  44 20 26 45 45 30 43 34  31 30 31 20 5c 20 41 44  |D &EE0C4101 \ AD|
00001550  46 45 20 46 34 2c 46 34  2c 46 31 0d 07 30 1f 45  |FE F4,F4,F1..0.E|
00001560  51 55 44 20 26 45 45 30  38 41 31 30 36 20 5c 20  |QUD &EE08A106 \ |
00001570  4d 56 46 45 20 46 32 2c  46 36 0d 07 3a 1f 45 51  |MVFE F2,F6..:.EQ|
00001580  55 44 20 26 45 45 30 38  42 31 30 34 20 5c 20 4d  |UD &EE08B104 \ M|
00001590  56 46 45 20 46 33 2c 46  34 0d 07 44 1e 20 20 20  |VFE F3,F4..D.   |
000015a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 42 20  |              B |
000015b0  70 69 78 6c 6f 6f 70 0d  07 4e 05 3a 0d 07 58 0a  |pixloop..N.:..X.|
000015c0  2e 66 6f 75 6e 64 0d 07  62 0e 4d 4f 56 20 52 30  |.found..b.MOV R0|
000015d0  2c 52 31 31 0d 07 6c 13  4c 44 4d 46 44 20 52 31  |,R11..l.LDMFD R1|
000015e0  33 21 2c 7b 50 43 7d 0d  07 76 05 3a 0d 07 80 0a  |3!,{PC}..v.:....|
000015f0  2e 73 65 74 75 70 0d 07  8a 1f 45 51 55 44 20 26  |.setup....EQUD &|
00001600  45 45 30 38 38 31 30 38  20 5c 20 4d 56 46 45 20  |EE088108 \ MVFE |
00001610  46 30 2c 23 30 0d 07 94  22 45 51 55 44 20 26 45  |F0,#0..."EQUD &E|
00001620  45 32 38 30 31 30 41 20  5c 20 53 42 46 45 20 46  |E28010A \ SBFE F|
00001630  30 2c 46 30 2c 23 32 0d  07 9e 20 20 20 20 20 20  |0,F0,#2...      |
00001640  20 20 20 20 20 20 20 20  20 20 20 20 41 44 52 20  |            ADR |
00001650  52 30 2c 78 6d 69 6e 0d  07 a8 21 45 51 55 44 20  |R0,xmin...!EQUD |
00001660  26 45 43 45 30 30 31 30  30 20 5c 20 53 54 46 45  |&ECE00100 \ STFE|
00001670  20 46 30 2c 5b 52 30 5d  0d 07 b2 20 20 20 20 20  | F0,[R0]...     |
00001680  20 20 20 20 20 20 20 20  20 20 20 20 20 41 44 52  |             ADR|
00001690  20 52 30 2c 79 6d 69 6e  0d 07 bc 21 45 51 55 44  | R0,ymin...!EQUD|
000016a0  20 26 45 43 45 30 30 31  30 30 20 5c 20 53 54 46  | &ECE00100 \ STF|
000016b0  45 20 46 30 2c 5b 52 30  5d 0d 07 c6 1f 45 51 55  |E F0,[R0]....EQU|
000016c0  44 20 26 45 45 30 38 39  31 30 41 20 5c 20 4d 56  |D &EE08910A \ MV|
000016d0  46 45 20 46 30 2c 23 32  0d 07 d0 22 45 51 55 44  |FE F0,#2..."EQUD|
000016e0  20 26 45 45 34 39 30 31  30 43 20 5c 20 44 56 46  | &EE49010C \ DVF|
000016f0  45 20 46 30 2c 46 30 2c  23 34 0d 07 da 22 45 51  |E F0,F0,#4..."EQ|
00001700  55 44 20 26 45 45 34 38  31 31 30 43 20 5c 20 44  |UD &EE48110C \ D|
00001710  56 46 45 20 46 30 2c 46  30 2c 23 34 0d 07 e4 22  |VFE F0,F0,#4..."|
00001720  45 51 55 44 20 26 45 45  34 39 30 31 30 43 20 5c  |EQUD &EE49010C \|
00001730  20 44 56 46 45 20 46 30  2c 46 30 2c 23 34 0d 07  | DVFE F0,F0,#4..|
00001740  ee 22 45 51 55 44 20 26  45 45 34 38 31 31 30 43  |."EQUD &EE48110C|
00001750  20 5c 20 44 56 46 45 20  46 30 2c 46 30 2c 23 34  | \ DVFE F0,F0,#4|
00001760  0d 07 f8 22 45 51 55 44  20 26 45 45 34 39 30 31  |..."EQUD &EE4901|
00001770  30 41 20 5c 20 44 56 46  45 20 46 30 2c 46 30 2c  |0A \ DVFE F0,F0,|
00001780  23 32 0d 08 02 21 20 20  20 20 20 20 20 20 20 20  |#2...!          |
00001790  20 20 20 20 20 20 20 41  44 52 20 52 30 2c 79 73  |       ADR R0,ys|
000017a0  74 65 70 0d 08 0c 21 45  51 55 44 20 26 45 43 45  |tep...!EQUD &ECE|
000017b0  30 30 31 30 30 20 5c 20  53 54 46 45 20 46 30 2c  |00100 \ STFE F0,|
000017c0  5b 52 30 5d 0d 08 16 21  20 20 20 20 20 20 20 20  |[R0]...!        |
000017d0  20 20 20 20 20 20 20 20  20 41 44 52 20 52 30 2c  |         ADR R0,|
000017e0  78 73 74 65 70 0d 08 20  21 45 51 55 44 20 26 45  |xstep.. !EQUD &E|
000017f0  43 45 30 30 31 30 30 20  5c 20 53 54 46 45 20 46  |CE00100 \ STFE F|
00001800  30 2c 5b 52 30 5d 0d 08  2a 1f 20 20 20 20 20 20  |0,[R0]..*.      |
00001810  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 50  |           MOV P|
00001820  43 2c 52 31 34 0d 08 34  05 3a 0d 08 3e 14 2e 70  |C,R14..4.:..>..p|
00001830  6c 6f 74 73 74 61 74 20  45 51 55 44 20 30 0d 08  |lotstat EQUD 0..|
00001840  48 09 41 4c 49 47 4e 0d  08 52 10 2e 70 72 65 76  |H.ALIGN..R..prev|
00001850  20 45 51 55 44 20 30 0d  08 5c 09 41 4c 49 47 4e  | EQUD 0..\.ALIGN|
00001860  0d 08 66 05 3a 0d 08 70  17 5c 20 4d 41 49 4e 20  |..f.:..p.\ MAIN |
00001870  f0 20 43 4f 4e 54 52 4f  4c 4c 45 52 0d 08 7a 05  |. CONTROLLER..z.|
00001880  3a 0d 08 84 25 2e 70 6c  6f 74 74 65 72 20 20 20  |:...%.plotter   |
00001890  20 20 20 20 20 20 53 54  4d 46 44 20 52 31 33 21  |      STMFD R13!|
000018a0  2c 7b 52 31 34 7d 0d 08  8e 20 20 20 20 20 20 20  |,{R14}...       |
000018b0  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |           MOV R|
000018c0  39 2c 23 35 31 32 0d 08  98 20 20 20 20 20 20 20  |9,#512...       |
000018d0  20 20 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |           ADR R|
000018e0  32 2c 73 74 65 70 0d 08  a2 20 20 20 20 20 20 20  |2,step...       |
000018f0  20 20 20 20 20 20 20 20  20 20 20 53 54 52 20 52  |           STR R|
00001900  39 2c 5b 52 32 5d 0d 08  ac 1e 2e 6e 65 77 73 74  |9,[R2].....newst|
00001910  65 70 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |ep         MOV R|
00001920  30 2c 23 30 0d 08 b6 1e  20 20 20 20 20 20 20 20  |0,#0....        |
00001930  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 31 2c  |         MOV R1,|
00001940  23 30 0d 08 c0 1e 20 20  20 20 20 20 20 20 20 20  |#0....          |
00001950  20 20 20 20 20 20 20 4d  4f 56 20 52 37 2c 23 30  |       MOV R7,#0|
00001960  0d 08 ca 1e 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
00001970  20 20 20 20 20 4d 4f 56  20 52 38 2c 23 30 0d 08  |     MOV R8,#0..|
00001980  d4 20 2e 70 6c 74 6c 6f  6f 70 20 20 20 20 20 20  |. .pltloop      |
00001990  20 20 20 41 44 52 20 52  32 2c 78 73 74 72 0d 08  |   ADR R2,xstr..|
000019a0  de 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
000019b0  20 20 20 53 54 52 20 52  30 2c 5b 52 32 5d 0d 08  |   STR R0,[R2]..|
000019c0  e8 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
000019d0  20 20 20 41 44 52 20 52  32 2c 79 73 74 72 0d 08  |   ADR R2,ystr..|
000019e0  f2 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
000019f0  20 20 20 53 54 52 20 52  31 2c 5b 52 32 5d 0d 08  |   STR R1,[R2]..|
00001a00  fc 1f 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001a10  20 20 20 80 20 52 32 2c  52 37 2c 23 31 0d 09 06  |   . R2,R7,#1...|
00001a20  1e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001a30  20 20 43 4d 50 20 52 32  2c 23 30 0d 09 10 20 20  |  CMP R2,#0...  |
00001a40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001a50  42 4e 45 20 70 6c 6f 74  70 69 78 0d 09 1a 1f 20  |BNE plotpix.... |
00001a60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001a70  80 20 52 32 2c 52 38 2c  23 31 0d 09 24 1e 20 20  |. R2,R8,#1..$.  |
00001a80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 43  |               C|
00001a90  4d 50 20 52 32 2c 23 30  0d 09 2e 20 20 20 20 20  |MP R2,#0...     |
00001aa0  20 20 20 20 20 20 20 20  20 20 20 20 20 42 45 51  |             BEQ|
00001ab0  20 70 6c 6f 74 74 65 64  0d 09 38 24 2e 70 6c 6f  | plotted..8$.plo|
00001ac0  74 70 69 78 20 20 20 20  20 20 20 20 20 41 44 52  |tpix         ADR|
00001ad0  20 52 32 2c 77 69 6d 70  73 74 61 74 0d 09 42 20  | R2,wimpstat..B |
00001ae0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001af0  20 4c 44 52 20 52 33 2c  5b 52 32 5d 0d 09 4c 21  | LDR R3,[R2]..L!|
00001b00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001b10  20 43 4d 50 20 52 33 2c  23 26 31 30 30 0d 09 56  | CMP R3,#&100..V|
00001b20  21 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |!               |
00001b30  20 20 42 45 51 20 70 6c  6f 74 73 74 6f 70 0d 09  |  BEQ plotstop..|
00001b40  60 25 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |`%              |
00001b50  20 20 20 4d 4f 56 20 52  33 2c 52 33 2c 41 53 4c  |   MOV R3,R3,ASL|
00001b60  20 23 31 0d 09 6a 20 20  20 20 20 20 20 20 20 20  | #1..j          |
00001b70  20 20 20 20 20 20 20 20  53 54 52 20 52 33 2c 5b  |        STR R3,[|
00001b80  52 32 5d 0d 09 74 1e 20  20 20 20 20 20 20 20 20  |R2]..t.         |
00001b90  20 20 20 20 20 20 20 20  4d 4f 56 20 52 32 2c 52  |        MOV R2,R|
00001ba0  31 0d 09 7e 1e 20 20 20  20 20 20 20 20 20 20 20  |1..~.           |
00001bb0  20 20 20 20 20 20 4d 4f  56 20 52 31 2c 52 30 0d  |      MOV R1,R0.|
00001bc0  09 88 1f 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00001bd0  20 20 20 20 42 4c 20 6d  61 6e 64 70 69 78 0d 09  |    BL mandpix..|
00001be0  92 1d 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001bf0  20 20 20 42 4c 20 70 6f  69 6e 74 0d 09 9c 24 20  |   BL point...$ |
00001c00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001c10  41 44 52 20 52 30 2c 77  69 6d 70 73 74 61 74 0d  |ADR R0,wimpstat.|
00001c20  09 a6 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001c30  20 20 20 20 4c 44 52 20  52 30 2c 5b 52 30 5d 0d  |    LDR R0,[R0].|
00001c40  09 b0 1e 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00001c50  20 20 20 20 43 4d 50 20  52 30 2c 23 30 0d 09 ba  |    CMP R0,#0...|
00001c60  21 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |!               |
00001c70  20 20 42 4e 45 20 70 6c  6f 74 73 74 6f 70 0d 09  |  BNE plotstop..|
00001c80  c4 20 2e 70 6c 6f 74 74  65 64 62 20 20 20 20 20  |. .plottedb     |
00001c90  20 20 20 41 44 52 20 52  32 2c 78 73 74 72 0d 09  |   ADR R2,xstr..|
00001ca0  ce 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001cb0  20 20 20 4c 44 52 20 52  30 2c 5b 52 32 5d 0d 09  |   LDR R0,[R2]..|
00001cc0  d8 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001cd0  20 20 20 41 44 52 20 52  32 2c 79 73 74 72 0d 09  |   ADR R2,ystr..|
00001ce0  e2 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001cf0  20 20 20 4c 44 52 20 52  31 2c 5b 52 32 5d 0d 09  |   LDR R1,[R2]..|
00001d00  ec 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001d10  20 20 20 41 44 52 20 52  32 2c 73 74 65 70 0d 09  |   ADR R2,step..|
00001d20  f6 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001d30  20 20 20 4c 44 52 20 52  39 2c 5b 52 32 5d 0d 0a  |   LDR R9,[R2]..|
00001d40  00 21 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.!              |
00001d50  20 20 20 41 44 44 20 52  30 2c 52 30 2c 52 39 0d  |   ADD R0,R0,R9.|
00001d60  0a 0a 21 20 20 20 20 20  20 20 20 20 20 20 20 20  |..!             |
00001d70  20 20 20 20 41 44 44 20  52 37 2c 52 37 2c 23 31  |    ADD R7,R7,#1|
00001d80  0d 0a 14 21 20 20 20 20  20 20 20 20 20 20 20 20  |...!            |
00001d90  20 20 20 20 20 43 4d 50  20 52 30 2c 23 31 30 32  |     CMP R0,#102|
00001da0  34 0d 0a 1e 20 20 20 20  20 20 20 20 20 20 20 20  |4...            |
00001db0  20 20 20 20 20 20 42 4e  45 20 70 6c 74 6c 6f 6f  |      BNE pltloo|
00001dc0  70 0d 0a 28 1e 20 20 20  20 20 20 20 20 20 20 20  |p..(.           |
00001dd0  20 20 20 20 20 20 4d 4f  56 20 52 30 2c 23 30 0d  |      MOV R0,#0.|
00001de0  0a 32 1e 20 20 20 20 20  20 20 20 20 20 20 20 20  |.2.             |
00001df0  20 20 20 20 4d 4f 56 20  52 37 2c 23 30 0d 0a 3c  |    MOV R7,#0..<|
00001e00  1e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00001e10  20 20 43 4d 50 20 52 39  2c 23 33 0d 0a 46 21 20  |  CMP R9,#3..F! |
00001e20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001e30  42 43 53 20 6e 6f 74 66  69 6e 61 6c 0d 0a 50 1e  |BCS notfinal..P.|
00001e40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001e50  20 4d 4f 56 20 52 39 2c  23 34 0d 0a 5a 21 2e 6e  | MOV R9,#4..Z!.n|
00001e60  6f 74 66 69 6e 61 6c 20  20 20 20 20 20 20 20 41  |otfinal        A|
00001e70  44 44 20 52 31 2c 52 31  2c 52 39 0d 0a 64 21 20  |DD R1,R1,R9..d! |
00001e80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001e90  41 44 44 20 52 38 2c 52  38 2c 23 31 0d 0a 6e 21  |ADD R8,R8,#1..n!|
00001ea0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001eb0  20 43 4d 50 20 52 31 2c  23 31 30 32 34 0d 0a 78  | CMP R1,#1024..x|
00001ec0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001ed0  20 20 42 4e 45 20 70 6c  74 6c 6f 6f 70 0d 0a 82  |  BNE pltloop...|
00001ee0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001ef0  20 20 4c 44 52 20 52 39  2c 5b 52 32 5d 0d 0a 8c  |  LDR R9,[R2]...|
00001f00  25 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |%               |
00001f10  20 20 4d 4f 56 20 52 39  2c 52 39 2c 4c 53 52 20  |  MOV R9,R9,LSR |
00001f20  23 31 0d 0a 96 20 20 20  20 20 20 20 20 20 20 20  |#1...           |
00001f30  20 20 20 20 20 20 20 53  54 52 20 52 39 2c 5b 52  |       STR R9,[R|
00001f40  32 5d 0d 0a a0 1e 20 20  20 20 20 20 20 20 20 20  |2]....          |
00001f50  20 20 20 20 20 20 20 43  4d 50 20 52 39 2c 23 31  |       CMP R9,#1|
00001f60  0d 0a aa 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00001f70  20 20 20 20 20 42 4e 45  20 6e 65 77 73 74 65 70  |     BNE newstep|
00001f80  0d 0a b4 1e 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
00001f90  20 20 20 20 20 4d 4f 56  20 52 30 2c 23 30 0d 0a  |     MOV R0,#0..|
00001fa0  be 24 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.$              |
00001fb0  20 20 20 4c 44 4d 46 44  20 52 31 33 21 2c 7b 50  |   LDMFD R13!,{P|
00001fc0  43 7d 0d 0a c8 24 2e 70  6c 6f 74 74 65 64 20 20  |C}...$.plotted  |
00001fd0  20 20 20 20 20 20 20 41  44 52 20 52 30 2c 77 69  |       ADR R0,wi|
00001fe0  6d 70 73 74 61 74 0d 0a  d2 20 20 20 20 20 20 20  |mpstat...       |
00001ff0  20 20 20 20 20 20 20 20  20 20 20 4c 44 52 20 52  |           LDR R|
00002000  31 2c 5b 52 30 5d 0d 0a  dc 1e 20 20 20 20 20 20  |1,[R0]....      |
00002010  20 20 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |           CMP R|
00002020  31 2c 23 31 0d 0a e6 21  20 20 20 20 20 20 20 20  |1,#1...!        |
00002030  20 20 20 20 20 20 20 20  20 42 45 51 20 70 6c 6f  |         BEQ plo|
00002040  74 74 65 64 62 0d 0a f0  23 20 20 20 20 20 20 20  |ttedb...#       |
00002050  20 20 20 20 20 20 20 20  20 20 53 57 49 20 22 4f  |          SWI "O|
00002060  53 5f 4d 6f 75 73 65 22  0d 0a fa 1e 20 20 20 20  |S_Mouse"....    |
00002070  20 20 20 20 20 20 20 20  20 20 20 20 20 43 4d 50  |             CMP|
00002080  20 52 32 2c 23 30 0d 0b  04 21 20 20 20 20 20 20  | R2,#0...!      |
00002090  20 20 20 20 20 20 20 20  20 20 20 42 45 51 20 70  |           BEQ p|
000020a0  6c 6f 74 74 65 64 62 0d  0b 0e 20 2e 70 6c 6f 74  |lottedb... .plot|
000020b0  73 74 6f 70 20 20 20 20  20 20 20 20 41 44 52 20  |stop        ADR |
000020c0  52 30 2c 78 70 6e 73 0d  0b 18 20 20 20 20 20 20  |R0,xpns...      |
000020d0  20 20 20 20 20 20 20 20  20 20 20 20 53 54 52 20  |            STR |
000020e0  52 37 2c 5b 52 30 5d 0d  0b 22 20 20 20 20 20 20  |R7,[R0].."      |
000020f0  20 20 20 20 20 20 20 20  20 20 20 20 41 44 52 20  |            ADR |
00002100  52 30 2c 79 70 6e 73 0d  0b 2c 20 20 20 20 20 20  |R0,ypns..,      |
00002110  20 20 20 20 20 20 20 20  20 20 20 20 53 54 52 20  |            STR |
00002120  52 38 2c 5b 52 30 5d 0d  0b 36 1e 20 20 20 20 20  |R8,[R0]..6.     |
00002130  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00002140  52 30 2c 23 31 0d 0b 40  24 20 20 20 20 20 20 20  |R0,#1..@$       |
00002150  20 20 20 20 20 20 20 20  20 20 4c 44 4d 46 44 20  |          LDMFD |
00002160  52 31 33 21 2c 7b 50 43  7d 0d 0b 4a 05 3a 0d 0b  |R13!,{PC}..J.:..|
00002170  54 25 2e 63 6f 6e 74 70  6c 6f 74 20 20 20 20 20  |T%.contplot     |
00002180  20 20 20 53 54 4d 46 44  20 52 31 33 21 2c 7b 52  |   STMFD R13!,{R|
00002190  31 34 7d 0d 0b 5e 20 20  20 20 20 20 20 20 20 20  |14}..^          |
000021a0  20 20 20 20 20 20 20 20  41 44 52 20 52 30 2c 78  |        ADR R0,x|
000021b0  70 6e 73 0d 0b 68 20 20  20 20 20 20 20 20 20 20  |pns..h          |
000021c0  20 20 20 20 20 20 20 20  4c 44 52 20 52 37 2c 5b  |        LDR R7,[|
000021d0  52 30 5d 0d 0b 72 20 20  20 20 20 20 20 20 20 20  |R0]..r          |
000021e0  20 20 20 20 20 20 20 20  41 44 52 20 52 30 2c 79  |        ADR R0,y|
000021f0  70 6e 73 0d 0b 7c 20 20  20 20 20 20 20 20 20 20  |pns..|          |
00002200  20 20 20 20 20 20 20 20  4c 44 52 20 52 38 2c 5b  |        LDR R8,[|
00002210  52 30 5d 0d 0b 86 1f 20  20 20 20 20 20 20 20 20  |R0]....         |
00002220  20 20 20 20 20 20 20 20  42 20 70 6c 6f 74 74 65  |        B plotte|
00002230  64 62 0d 0b 90 05 3a 0d  0b 9a 1c 5c 20 53 43 52  |db....:....\ SCR|
00002240  45 45 4e 20 4d 45 4d 4f  52 59 20 48 41 4e 44 4c  |EEN MEMORY HANDL|
00002250  49 4e 47 0d 0b a4 05 3a  0d 0b ae 22 2e 70 6f 69  |ING....:...".poi|
00002260  6e 74 20 20 20 20 20 20  20 20 20 20 20 41 44 44  |nt           ADD|
00002270  20 52 31 30 2c 52 30 2c  23 37 0d 0b b8 23 20 20  | R10,R0,#7...#  |
00002280  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 80  |               .|
00002290  20 52 31 30 2c 52 31 30  2c 23 31 32 37 0d 0b c2  | R10,R10,#127...|
000022a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000022b0  20 20 41 44 52 20 52 32  2c 78 73 74 72 0d 0b cc  |  ADR R2,xstr...|
000022c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000022d0  20 20 4c 44 52 20 52 30  2c 5b 52 32 5d 0d 0b d6  |  LDR R0,[R2]...|
000022e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000022f0  20 20 41 44 52 20 52 32  2c 79 73 74 72 0d 0b e0  |  ADR R2,ystr...|
00002300  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002310  20 20 4c 44 52 20 52 31  2c 5b 52 32 5d 0d 0b ea  |  LDR R1,[R2]...|
00002320  22 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |"               |
00002330  20 20 4d 4f 56 20 52 31  31 2c 23 26 32 38 30 0d  |  MOV R11,#&280.|
00002340  0b f4 25 20 20 20 20 20  20 20 20 20 20 20 20 20  |..%             |
00002350  20 20 20 20 4d 4f 56 20  52 30 2c 52 30 2c 4c 53  |    MOV R0,R0,LS|
00002360  52 20 23 31 0d 0b fe 25  20 20 20 20 20 20 20 20  |R #1...%        |
00002370  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 31 2c  |         MOV R1,|
00002380  52 31 2c 4c 53 52 20 23  32 0d 0c 08 22 20 20 20  |R1,LSR #2..."   |
00002390  20 20 20 20 20 20 20 20  20 20 20 20 20 20 53 55  |              SU|
000023a0  42 20 52 30 2c 52 31 31  2c 52 30 0d 0c 12 25 20  |B R0,R11,R0...% |
000023b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000023c0  41 44 52 20 52 31 31 2c  77 69 6d 70 73 74 61 74  |ADR R11,wimpstat|
000023d0  0d 0c 1c 22 20 20 20 20  20 20 20 20 20 20 20 20  |..."            |
000023e0  20 20 20 20 20 4c 44 52  20 52 31 31 2c 5b 52 31  |     LDR R11,[R1|
000023f0  31 5d 0d 0c 26 1f 20 20  20 20 20 20 20 20 20 20  |1]..&.          |
00002400  20 20 20 20 20 20 20 43  4d 50 20 52 31 31 2c 23  |       CMP R11,#|
00002410  30 0d 0c 30 25 20 20 20  20 20 20 20 20 20 20 20  |0..0%           |
00002420  20 20 20 20 20 20 ec 51  20 52 31 31 2c 23 26 32  |      .Q R11,#&2|
00002430  30 30 30 30 30 30 0d 0c  3a 25 20 20 20 20 20 20  |000000..:%      |
00002440  20 20 20 20 20 20 20 20  20 20 20 41 44 52 4e 45  |           ADRNE|
00002450  20 52 31 31 2c 73 63 72  65 61 64 0d 0c 44 24 20  | R11,scread..D$ |
00002460  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002470  4c 44 52 4e 45 20 52 31  31 2c 5b 52 31 31 5d 0d  |LDRNE R11,[R11].|
00002480  0c 4e 2a 20 20 20 20 20  20 20 20 20 20 20 20 20  |.N*             |
00002490  20 20 20 20 41 44 44 4e  45 20 52 31 31 2c 52 31  |    ADDNE R11,R1|
000024a0  31 2c 23 26 32 38 30 30  30 0d 0c 58 23 20 20 20  |1,#&28000..X#   |
000024b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 53 55  |              SU|
000024c0  42 20 52 31 31 2c 52 31  31 2c 52 30 0d 0c 62 22  |B R11,R11,R0..b"|
000024d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000024e0  20 4d 4f 56 20 52 31 32  2c 23 26 32 38 30 0d 0c  | MOV R12,#&280..|
000024f0  6c 22 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |l"              |
00002500  20 20 20 4d 55 4c 20 52  32 2c 52 31 2c 52 31 32  |   MUL R2,R1,R12|
00002510  0d 0c 76 23 20 20 20 20  20 20 20 20 20 20 20 20  |..v#            |
00002520  20 20 20 20 20 53 55 42  20 52 31 31 2c 52 31 31  |     SUB R11,R11|
00002530  2c 52 32 0d 0c 80 20 20  20 20 20 20 20 20 20 20  |,R2...          |
00002540  20 20 20 20 20 20 20 20  41 44 52 20 52 30 2c 73  |        ADR R0,s|
00002550  74 65 70 0d 0c 8a 20 20  20 20 20 20 20 20 20 20  |tep...          |
00002560  20 20 20 20 20 20 20 20  4c 44 52 20 52 32 2c 5b  |        LDR R2,[|
00002570  52 30 5d 0d 0c 94 1e 20  20 20 20 20 20 20 20 20  |R0]....         |
00002580  20 20 20 20 20 20 20 20  4d 4f 56 20 52 30 2c 23  |        MOV R0,#|
00002590  30 0d 0c 9e 1e 20 20 20  20 20 20 20 20 20 20 20  |0....           |
000025a0  20 20 20 20 20 20 4d 4f  56 20 52 31 2c 23 30 0d  |      MOV R1,#0.|
000025b0  0c a8 25 2e 73 71 75 70  6c 6f 70 20 20 20 20 20  |..%.squplop     |
000025c0  20 20 20 20 4c 44 52 42  20 52 33 2c 5b 52 31 31  |    LDRB R3,[R11|
000025d0  2c 52 30 5d 0d 0c b2 21  20 20 20 20 20 20 20 20  |,R0]...!        |
000025e0  20 20 20 20 20 20 20 20  20 80 20 52 33 2c 52 33  |         . R3,R3|
000025f0  2c 23 31 32 38 0d 0c bc  22 20 20 20 20 20 20 20  |,#128..."       |
00002600  20 20 20 20 20 20 20 20  20 20 41 44 44 20 52 33  |          ADD R3|
00002610  2c 52 33 2c 52 31 30 0d  0c c6 25 20 20 20 20 20  |,R3,R10...%     |
00002620  20 20 20 20 20 20 20 20  20 20 20 20 53 54 52 42  |            STRB|
00002630  20 52 33 2c 5b 52 31 31  2c 52 30 5d 0d 0c d0 21  | R3,[R11,R0]...!|
00002640  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002650  20 41 44 44 20 52 30 2c  52 30 2c 23 31 0d 0c da  | ADD R0,R0,#1...|
00002660  25 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |%               |
00002670  20 20 43 4d 50 20 52 30  2c 52 32 2c 4c 53 52 20  |  CMP R0,R2,LSR |
00002680  23 31 0d 0c e4 20 20 20  20 20 20 20 20 20 20 20  |#1...           |
00002690  20 20 20 20 20 20 20 42  43 43 20 73 71 75 70 6c  |       BCC squpl|
000026a0  6f 70 0d 0c ee 1e 20 20  20 20 20 20 20 20 20 20  |op....          |
000026b0  20 20 20 20 20 20 20 4d  4f 56 20 52 30 2c 23 30  |       MOV R0,#0|
000026c0  0d 0c f8 26 20 20 20 20  20 20 20 20 20 20 20 20  |...&            |
000026d0  20 20 20 20 20 53 55 42  20 52 31 31 2c 52 31 31  |     SUB R11,R11|
000026e0  2c 23 26 32 38 30 0d 0d  02 21 20 20 20 20 20 20  |,#&280...!      |
000026f0  20 20 20 20 20 20 20 20  20 20 20 41 44 44 20 52  |           ADD R|
00002700  31 2c 52 31 2c 23 31 0d  0d 0c 25 20 20 20 20 20  |1,R1,#1...%     |
00002710  20 20 20 20 20 20 20 20  20 20 20 20 43 4d 50 20  |            CMP |
00002720  52 31 2c 52 32 2c 4c 53  52 20 23 32 0d 0d 16 20  |R1,R2,LSR #2... |
00002730  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002740  20 42 43 43 20 73 71 75  70 6c 6f 70 0d 0d 20 1f  | BCC squplop.. .|
00002750  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002760  20 4d 4f 56 20 50 43 2c  52 31 34 0d 0d 2a 05 3a  | MOV PC,R14..*.:|
00002770  0d 0d 34 21 2e 6d 6f 75  73 65 62 6f 78 20 20 20  |..4!.mousebox   |
00002780  20 20 20 20 20 41 44 52  20 52 30 2c 78 62 6f 78  |     ADR R0,xbox|
00002790  61 0d 0d 3e 20 20 20 20  20 20 20 20 20 20 20 20  |a..>            |
000027a0  20 20 20 20 20 20 4c 44  52 20 52 30 2c 5b 52 30  |      LDR R0,[R0|
000027b0  5d 0d 0d 48 21 20 20 20  20 20 20 20 20 20 20 20  |]..H!           |
000027c0  20 20 20 20 20 20 41 44  52 20 52 31 2c 78 62 6f  |      ADR R1,xbo|
000027d0  78 62 0d 0d 52 20 20 20  20 20 20 20 20 20 20 20  |xb..R           |
000027e0  20 20 20 20 20 20 20 4c  44 52 20 52 31 2c 5b 52  |       LDR R1,[R|
000027f0  31 5d 0d 0d 5c 1e 20 20  20 20 20 20 20 20 20 20  |1]..\.          |
00002800  20 20 20 20 20 20 20 43  4d 50 20 52 30 2c 52 31  |       CMP R0,R1|
00002810  0d 0d 66 20 20 20 20 20  20 20 20 20 20 20 20 20  |..f             |
00002820  20 20 20 20 20 4d 4f 56  43 53 20 52 32 2c 52 30  |     MOVCS R2,R0|
00002830  0d 0d 70 20 20 20 20 20  20 20 20 20 20 20 20 20  |..p             |
00002840  20 20 20 20 20 4d 4f 56  43 53 20 52 30 2c 52 31  |     MOVCS R0,R1|
00002850  0d 0d 7a 20 20 20 20 20  20 20 20 20 20 20 20 20  |..z             |
00002860  20 20 20 20 20 4d 4f 56  43 53 20 52 31 2c 52 32  |     MOVCS R1,R2|
00002870  0d 0d 84 21 20 20 20 20  20 20 20 20 20 20 20 20  |...!            |
00002880  20 20 20 20 20 41 44 52  20 52 32 2c 79 62 6f 78  |     ADR R2,ybox|
00002890  61 0d 0d 8e 20 20 20 20  20 20 20 20 20 20 20 20  |a...            |
000028a0  20 20 20 20 20 20 4c 44  52 20 52 32 2c 5b 52 32  |      LDR R2,[R2|
000028b0  5d 0d 0d 98 21 20 20 20  20 20 20 20 20 20 20 20  |]...!           |
000028c0  20 20 20 20 20 20 41 44  52 20 52 33 2c 79 62 6f  |      ADR R3,ybo|
000028d0  78 62 0d 0d a2 20 20 20  20 20 20 20 20 20 20 20  |xb...           |
000028e0  20 20 20 20 20 20 20 4c  44 52 20 52 33 2c 5b 52  |       LDR R3,[R|
000028f0  33 5d 0d 0d ac 1e 20 20  20 20 20 20 20 20 20 20  |3]....          |
00002900  20 20 20 20 20 20 20 43  4d 50 20 52 32 2c 52 33  |       CMP R2,R3|
00002910  0d 0d b6 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00002920  20 20 20 20 20 4d 4f 56  43 53 20 52 34 2c 52 32  |     MOVCS R4,R2|
00002930  0d 0d c0 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00002940  20 20 20 20 20 4d 4f 56  43 53 20 52 32 2c 52 33  |     MOVCS R2,R3|
00002950  0d 0d ca 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00002960  20 20 20 20 20 4d 4f 56  43 53 20 52 33 2c 52 34  |     MOVCS R3,R4|
00002970  0d 0d d4 22 20 20 20 20  20 20 20 20 20 20 20 20  |..."            |
00002980  20 20 20 20 20 4d 4f 56  20 52 31 31 2c 23 26 32  |     MOV R11,#&2|
00002990  38 30 0d 0d de 25 20 20  20 20 20 20 20 20 20 20  |80...%          |
000029a0  20 20 20 20 20 20 20 4d  4f 56 20 52 34 2c 52 30  |       MOV R4,R0|
000029b0  2c 4c 53 52 20 23 31 0d  0d e8 25 20 20 20 20 20  |,LSR #1...%     |
000029c0  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
000029d0  52 35 2c 52 32 2c 4c 53  52 20 23 32 0d 0d f2 22  |R5,R2,LSR #2..."|
000029e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000029f0  20 53 55 42 20 52 34 2c  52 31 31 2c 52 34 0d 0d  | SUB R4,R11,R4..|
00002a00  fc 26 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.&              |
00002a10  20 20 20 4d 4f 56 20 52  31 31 2c 23 26 32 30 30  |   MOV R11,#&200|
00002a20  30 30 30 30 0d 0e 06 23  20 20 20 20 20 20 20 20  |0000...#        |
00002a30  20 20 20 20 20 20 20 20  20 53 55 42 20 52 31 31  |         SUB R11|
00002a40  2c 52 31 31 2c 52 34 0d  0e 10 22 20 20 20 20 20  |,R11,R4..."     |
00002a50  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00002a60  52 31 32 2c 23 26 32 38  30 0d 0e 1a 22 20 20 20  |R12,#&280..."   |
00002a70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 55  |              MU|
00002a80  4c 20 52 36 2c 52 35 2c  52 31 32 0d 0e 24 23 20  |L R6,R5,R12..$# |
00002a90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002aa0  53 55 42 20 52 31 31 2c  52 31 31 2c 52 36 0d 0e  |SUB R11,R11,R6..|
00002ab0  2e 1e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00002ac0  20 20 20 4d 4f 56 20 52  34 2c 23 30 0d 0e 38 1e  |   MOV R4,#0..8.|
00002ad0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002ae0  20 4d 4f 56 20 52 35 2c  52 31 0d 0e 42 21 20 20  | MOV R5,R1..B!  |
00002af0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
00002b00  55 42 20 52 35 2c 52 35  2c 52 30 0d 0e 4c 25 20  |UB R5,R5,R0..L% |
00002b10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002b20  4d 4f 56 20 52 35 2c 52  35 2c 4c 53 52 20 23 31  |MOV R5,R5,LSR #1|
00002b30  0d 0e 56 25 2e 78 62 6f  74 6c 6f 70 20 20 20 20  |..V%.xbotlop    |
00002b40  20 20 20 20 20 4c 44 52  42 20 52 36 2c 5b 52 31  |     LDRB R6,[R1|
00002b50  31 2c 52 34 5d 0d 0e 60  21 20 20 20 20 20 20 20  |1,R4]..`!       |
00002b60  20 20 20 20 20 20 20 20  20 20 82 20 52 36 2c 52  |          . R6,R|
00002b70  36 2c 23 31 32 38 0d 0e  6a 25 20 20 20 20 20 20  |6,#128..j%      |
00002b80  20 20 20 20 20 20 20 20  20 20 20 53 54 52 42 20  |           STRB |
00002b90  52 36 2c 5b 52 31 31 2c  52 34 5d 0d 0e 74 21 20  |R6,[R11,R4]..t! |
00002ba0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002bb0  41 44 44 20 52 34 2c 52  34 2c 23 31 0d 0e 7e 1e  |ADD R4,R4,#1..~.|
00002bc0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002bd0  20 43 4d 50 20 52 34 2c  52 35 0d 0e 88 20 20 20  | CMP R4,R5...   |
00002be0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 42  |               B|
00002bf0  43 43 20 78 62 6f 74 6c  6f 70 0d 0e 92 1e 20 20  |CC xbotlop....  |
00002c00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00002c10  4f 56 20 52 36 2c 52 33  0d 0e 9c 21 20 20 20 20  |OV R6,R3...!    |
00002c20  20 20 20 20 20 20 20 20  20 20 20 20 20 53 55 42  |             SUB|
00002c30  20 52 36 2c 52 36 2c 52  32 0d 0e a6 25 20 20 20  | R6,R6,R2...%   |
00002c40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 4f  |              MO|
00002c50  56 20 52 36 2c 52 36 2c  4c 53 52 20 23 32 0d 0e  |V R6,R6,LSR #2..|
00002c60  b0 21 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.!              |
00002c70  20 20 20 4d 4f 56 20 52  34 2c 23 26 32 38 30 0d  |   MOV R4,#&280.|
00002c80  0e ba 21 20 20 20 20 20  20 20 20 20 20 20 20 20  |..!             |
00002c90  20 20 20 20 4d 55 4c 20  52 37 2c 52 36 2c 52 34  |    MUL R7,R6,R4|
00002ca0  0d 0e c4 1e 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
00002cb0  20 20 20 20 20 4d 4f 56  20 52 36 2c 52 37 0d 0e  |     MOV R6,R7..|
00002cc0  ce 1e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00002cd0  20 20 20 4d 4f 56 20 52  34 2c 23 30 0d 0e d8 26  |   MOV R4,#0...&|
00002ce0  2e 79 6c 65 66 74 6c 6f  70 20 20 20 20 20 20 20  |.yleftlop       |
00002cf0  20 4c 44 52 42 20 52 37  2c 5b 52 31 31 2c 2d 52  | LDRB R7,[R11,-R|
00002d00  34 5d 0d 0e e2 21 20 20  20 20 20 20 20 20 20 20  |4]...!          |
00002d10  20 20 20 20 20 20 20 82  20 52 37 2c 52 37 2c 23  |       . R7,R7,#|
00002d20  31 32 38 0d 0e ec 26 20  20 20 20 20 20 20 20 20  |128...&         |
00002d30  20 20 20 20 20 20 20 20  53 54 52 42 20 52 37 2c  |        STRB R7,|
00002d40  5b 52 31 31 2c 2d 52 34  5d 0d 0e f6 24 20 20 20  |[R11,-R4]...$   |
00002d50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
00002d60  44 20 52 34 2c 52 34 2c  23 26 32 38 30 0d 0f 00  |D R4,R4,#&280...|
00002d70  1e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00002d80  20 20 43 4d 50 20 52 34  2c 52 36 0d 0f 0a 21 20  |  CMP R4,R6...! |
00002d90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002da0  42 43 43 20 79 6c 65 66  74 6c 6f 70 0d 0f 14 24  |BCC yleftlop...$|
00002db0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002dc0  20 52 53 42 20 52 34 2c  52 35 2c 23 26 32 38 30  | RSB R4,R5,#&280|
00002dd0  0d 0f 1e 22 20 20 20 20  20 20 20 20 20 20 20 20  |..."            |
00002de0  20 20 20 20 20 5c 53 55  42 20 52 36 2c 52 36 2c  |     \SUB R6,R6,|
00002df0  52 35 0d 0f 28 26 2e 79  72 69 67 68 74 6c 6f 70  |R5..(&.yrightlop|
00002e00  20 20 20 20 20 20 20 4c  44 52 42 20 52 37 2c 5b  |       LDRB R7,[|
00002e10  52 31 31 2c 2d 52 34 5d  0d 0f 32 21 20 20 20 20  |R11,-R4]..2!    |
00002e20  20 20 20 20 20 20 20 20  20 20 20 20 20 82 20 52  |             . R|
00002e30  37 2c 52 37 2c 23 31 32  38 0d 0f 3c 26 20 20 20  |7,R7,#128..<&   |
00002e40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 53 54  |              ST|
00002e50  52 42 20 52 37 2c 5b 52  31 31 2c 2d 52 34 5d 0d  |RB R7,[R11,-R4].|
00002e60  0f 46 24 20 20 20 20 20  20 20 20 20 20 20 20 20  |.F$             |
00002e70  20 20 20 20 41 44 44 20  52 34 2c 52 34 2c 23 26  |    ADD R4,R4,#&|
00002e80  32 38 30 0d 0f 50 1e 20  20 20 20 20 20 20 20 20  |280..P.         |
00002e90  20 20 20 20 20 20 20 20  43 4d 50 20 52 34 2c 52  |        CMP R4,R|
00002ea0  36 0d 0f 5a 22 20 20 20  20 20 20 20 20 20 20 20  |6..Z"           |
00002eb0  20 20 20 20 20 20 42 43  43 20 79 72 69 67 68 74  |      BCC yright|
00002ec0  6c 6f 70 0d 0f 64 22 20  20 20 20 20 20 20 20 20  |lop..d"         |
00002ed0  20 20 20 20 20 20 20 20  5c 41 44 44 20 52 36 2c  |        \ADD R6,|
00002ee0  52 36 2c 52 35 0d 0f 6e  23 20 20 20 20 20 20 20  |R6,R5..n#       |
00002ef0  20 20 20 20 20 20 20 20  20 20 53 55 42 20 52 31  |          SUB R1|
00002f00  31 2c 52 31 31 2c 52 36  0d 0f 78 1e 20 20 20 20  |1,R11,R6..x.    |
00002f10  20 20 20 20 20 20 20 20  20 20 20 20 20 4d 4f 56  |             MOV|
00002f20  20 52 34 2c 23 30 0d 0f  82 25 2e 78 74 6f 70 6c  | R4,#0...%.xtopl|
00002f30  6f 70 20 20 20 20 20 20  20 20 20 4c 44 52 42 20  |op         LDRB |
00002f40  52 36 2c 5b 52 31 31 2c  52 34 5d 0d 0f 8c 21 20  |R6,[R11,R4]...! |
00002f50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002f60  82 20 52 36 2c 52 36 2c  23 31 32 38 0d 0f 96 25  |. R6,R6,#128...%|
00002f70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002f80  20 53 54 52 42 20 52 36  2c 5b 52 31 31 2c 52 34  | STRB R6,[R11,R4|
00002f90  5d 0d 0f a0 21 20 20 20  20 20 20 20 20 20 20 20  |]...!           |
00002fa0  20 20 20 20 20 20 41 44  44 20 52 34 2c 52 34 2c  |      ADD R4,R4,|
00002fb0  23 31 0d 0f aa 1e 20 20  20 20 20 20 20 20 20 20  |#1....          |
00002fc0  20 20 20 20 20 20 20 43  4d 50 20 52 34 2c 52 35  |       CMP R4,R5|
00002fd0  0d 0f b4 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
00002fe0  20 20 20 20 20 42 43 43  20 78 74 6f 70 6c 6f 70  |     BCC xtoplop|
00002ff0  0d 0f be 1f 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
00003000  20 20 20 20 20 4d 4f 56  20 50 43 2c 52 31 34 0d  |     MOV PC,R14.|
00003010  0f c8 05 3a 0d 0f d2 22  2e 73 61 76 65 73 63 72  |...:...".savescr|
00003020  20 20 20 20 20 20 20 20  20 41 44 52 20 52 31 2c  |         ADR R1,|
00003030  73 63 72 6d 65 6d 0d 0f  dc 20 20 20 20 20 20 20  |scrmem...       |
00003040  20 20 20 20 20 20 20 20  20 20 20 4c 44 52 20 52  |           LDR R|
00003050  30 2c 5b 52 31 5d 0d 0f  e6 22 20 20 20 20 20 20  |0,[R1]..."      |
00003060  20 20 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |           ADR R|
00003070  31 2c 73 63 72 65 61 64  0d 0f f0 20 20 20 20 20  |1,scread...     |
00003080  20 20 20 20 20 20 20 20  20 20 20 20 20 4c 44 52  |             LDR|
00003090  20 52 31 2c 5b 52 31 5d  0d 0f fa 1e 20 20 20 20  | R1,[R1]....    |
000030a0  20 20 20 20 20 20 20 20  20 20 20 20 20 4d 4f 56  |             MOV|
000030b0  20 52 32 2c 23 30 0d 10  04 23 2e 73 61 76 6c 6f  | R2,#0...#.savlo|
000030c0  70 20 20 20 20 20 20 20  20 20 20 4c 44 52 20 52  |p          LDR R|
000030d0  33 2c 5b 52 30 2c 52 32  5d 0d 10 0e 23 20 20 20  |3,[R0,R2]...#   |
000030e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 53 54  |              ST|
000030f0  52 20 52 33 2c 5b 52 31  2c 52 32 5d 0d 10 18 21  |R R3,[R1,R2]...!|
00003100  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00003110  20 41 44 44 20 52 32 2c  52 32 2c 23 34 0d 10 22  | ADD R2,R2,#4.."|
00003120  23 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |#               |
00003130  20 20 43 4d 50 20 52 32  2c 23 26 32 38 30 30 30  |  CMP R2,#&28000|
00003140  0d 10 2c 1f 20 20 20 20  20 20 20 20 20 20 20 20  |..,.            |
00003150  20 20 20 20 20 42 4e 45  20 73 61 76 6c 6f 70 0d  |     BNE savlop.|
00003160  10 36 1f 20 20 20 20 20  20 20 20 20 20 20 20 20  |.6.             |
00003170  20 20 20 20 4d 4f 56 20  50 43 2c 52 31 34 0d 10  |    MOV PC,R14..|
00003180  40 22 2e 6c 6f 61 64 73  63 72 20 20 20 20 20 20  |@".loadscr      |
00003190  20 20 20 41 44 52 20 52  30 2c 73 63 72 6d 65 6d  |   ADR R0,scrmem|
000031a0  0d 10 4a 20 20 20 20 20  20 20 20 20 20 20 20 20  |..J             |
000031b0  20 20 20 20 20 4c 44 52  20 52 31 2c 5b 52 30 5d  |     LDR R1,[R0]|
000031c0  0d 10 54 22 20 20 20 20  20 20 20 20 20 20 20 20  |..T"            |
000031d0  20 20 20 20 20 41 44 52  20 52 30 2c 73 63 72 65  |     ADR R0,scre|
000031e0  61 64 0d 10 5e 20 20 20  20 20 20 20 20 20 20 20  |ad..^           |
000031f0  20 20 20 20 20 20 20 4c  44 52 20 52 30 2c 5b 52  |       LDR R0,[R|
00003200  30 5d 0d 10 68 1e 20 20  20 20 20 20 20 20 20 20  |0]..h.          |
00003210  20 20 20 20 20 20 20 4d  4f 56 20 52 32 2c 23 30  |       MOV R2,#0|
00003220  0d 10 72 1d 20 20 20 20  20 20 20 20 20 20 20 20  |..r.            |
00003230  20 20 20 20 20 42 20 73  61 76 6c 6f 70 0d 10 7c  |     B savlop..||
00003240  05 3a 0d 10 86 1c 2e 78  6d 69 6e 20 45 51 55 44  |.:.....xmin EQUD|
00003250  20 30 3a 45 51 55 44 30  3a 45 51 55 44 30 0d 10  | 0:EQUD0:EQUD0..|
00003260  90 1c 2e 79 6d 69 6e 20  45 51 55 44 20 30 3a 45  |...ymin EQUD 0:E|
00003270  51 55 44 30 3a 45 51 55  44 30 0d 10 9a 1d 2e 78  |QUD0:EQUD0.....x|
00003280  73 74 65 70 20 45 51 55  44 20 30 3a 45 51 55 44  |step EQUD 0:EQUD|
00003290  30 3a 45 51 55 44 30 0d  10 a4 1d 2e 79 73 74 65  |0:EQUD0.....yste|
000032a0  70 20 45 51 55 44 20 30  3a 45 51 55 44 30 3a 45  |p EQUD 0:EQUD0:E|
000032b0  51 55 44 30 0d 10 ae 19  2e 73 63 72 6d 65 6d 20  |QUD0.....scrmem |
000032c0  45 51 55 44 20 26 31 46  44 38 30 30 30 0d 10 b8  |EQUD &1FD8000...|
000032d0  17 2e 73 63 72 65 61 64  20 45 51 55 44 20 73 63  |..scread EQUD sc|
000032e0  72 65 65 6e 0d 10 c2 12  2e 6d 61 78 69 74 20 45  |reen.....maxit E|
000032f0  51 55 44 20 32 35 0d 10  cc 10 2e 78 73 74 72 20  |QUD 25.....xstr |
00003300  45 51 55 44 20 30 0d 10  d6 10 2e 79 73 74 72 20  |EQUD 0.....ystr |
00003310  45 51 55 44 20 30 0d 10  e0 10 2e 78 70 6e 73 20  |EQUD 0.....xpns |
00003320  45 51 55 44 20 30 0d 10  ea 10 2e 79 70 6e 73 20  |EQUD 0.....ypns |
00003330  45 51 55 44 20 30 0d 10  f4 10 2e 73 74 65 70 20  |EQUD 0.....step |
00003340  45 51 55 44 20 30 0d 10  fe 11 2e 78 62 6f 78 61  |EQUD 0.....xboxa|
00003350  20 45 51 55 44 20 30 0d  11 08 11 2e 78 62 6f 78  | EQUD 0.....xbox|
00003360  62 20 45 51 55 44 20 30  0d 11 12 11 2e 79 62 6f  |b EQUD 0.....ybo|
00003370  78 61 20 45 51 55 44 20  30 0d 11 1c 11 2e 79 62  |xa EQUD 0.....yb|
00003380  6f 78 62 20 45 51 55 44  20 30 0d 11 26 05 3a 0d  |oxb EQUD 0..&.:.|
00003390  11 30 1d 2e 73 74 61 72  74 75 70 20 53 54 4d 46  |.0..startup STMF|
000033a0  44 20 52 31 33 21 2c 7b  52 31 34 7d 0d 11 3a 17  |D R13!,{R14}..:.|
000033b0  20 20 20 20 20 20 20 20  20 53 57 49 20 32 35 36  |         SWI 256|
000033c0  2b 32 32 0d 11 44 17 20  20 20 20 20 20 20 20 20  |+22..D.         |
000033d0  53 57 49 20 32 35 36 2b  31 35 0d 11 4e 18 20 20  |SWI 256+15..N.  |
000033e0  20 20 20 20 20 20 20 4d  4f 56 20 52 30 2c 23 31  |       MOV R0,#1|
000033f0  30 36 0d 11 58 16 20 20  20 20 20 20 20 20 20 4d  |06..X.         M|
00003400  4f 56 20 52 31 2c 23 31  0d 11 62 1a 20 20 20 20  |OV R1,#1..b.    |
00003410  20 20 20 20 20 53 57 49  20 22 4f 53 5f 42 79 74  |     SWI "OS_Byt|
00003420  65 22 0d 11 6c 17 20 20  20 20 20 20 20 20 20 53  |e"..l.         S|
00003430  57 49 20 32 35 36 2b 32  33 0d 11 76 16 20 20 20  |WI 256+23..v.   |
00003440  20 20 20 20 20 20 53 57  49 20 32 35 36 2b 31 0d  |      SWI 256+1.|
00003450  11 80 14 20 20 20 20 20  20 20 20 20 53 57 49 20  |...         SWI |
00003460  32 35 36 0d 11 8a 14 20  20 20 20 20 20 20 20 20  |256....         |
00003470  53 57 49 20 32 35 36 0d  11 94 14 20 20 20 20 20  |SWI 256....     |
00003480  20 20 20 20 53 57 49 20  32 35 36 0d 11 9e 14 20  |    SWI 256.... |
00003490  20 20 20 20 20 20 20 20  53 57 49 20 32 35 36 0d  |        SWI 256.|
000034a0  11 a8 14 20 20 20 20 20  20 20 20 20 53 57 49 20  |...         SWI |
000034b0  32 35 36 0d 11 b2 14 20  20 20 20 20 20 20 20 20  |256....         |
000034c0  53 57 49 20 32 35 36 0d  11 bc 14 20 20 20 20 20  |SWI 256....     |
000034d0  20 20 20 20 53 57 49 20  32 35 36 0d 11 c6 14 20  |    SWI 256.... |
000034e0  20 20 20 20 20 20 20 20  53 57 49 20 32 35 36 0d  |        SWI 256.|
000034f0  11 d0 1b 20 20 20 20 20  20 20 20 20 41 44 52 20  |...         ADR |
00003500  52 30 2c 73 63 68 6f 6f  73 65 0d 11 da 19 20 20  |R0,schoose....  |
00003510  20 20 20 20 20 20 20 53  57 49 20 22 4f 53 5f 43  |       SWI "OS_C|
00003520  4c 49 22 0d 11 e4 18 20  20 20 20 20 20 20 20 20  |LI"....         |
00003530  4d 4f 56 20 52 30 2c 23  26 45 44 0d 11 ee 19 20  |MOV R0,#&ED.... |
00003540  20 20 20 20 20 20 20 20  4d 4f 56 20 52 31 2c 23  |        MOV R1,#|
00003550  31 30 32 34 0d 11 f8 19  20 20 20 20 20 20 20 20  |1024....        |
00003560  20 41 44 52 20 52 32 2c  70 6c 6f 74 79 0d 12 02  | ADR R2,ploty...|
00003570  18 20 20 20 20 20 20 20  20 20 4c 44 52 20 52 32  |.         LDR R2|
00003580  2c 5b 52 32 5d 0d 12 0c  1a 20 20 20 20 20 20 20  |,[R2]....       |
00003590  20 20 53 57 49 20 22 4f  53 5f 50 6c 6f 74 22 0d  |  SWI "OS_Plot".|
000035a0  12 16 1c 20 20 20 20 20  20 20 20 20 53 57 49 20  |...         SWI |
000035b0  22 4f 53 5f 57 72 69 74  65 53 22 0d 12 20 29 20  |"OS_WriteS".. ) |
000035c0  20 20 20 20 20 20 20 20  45 51 55 42 31 37 3a 45  |        EQUB17:E|
000035d0  51 55 42 32 35 35 3a 45  51 55 42 31 37 3a 45 51  |QUB255:EQUB17:EQ|
000035e0  55 42 33 32 0d 12 2a 38  20 20 20 20 20 20 20 20  |UB32..*8        |
000035f0  20 45 51 55 42 33 31 3a  45 51 55 42 36 34 3a 45  | EQUB31:EQUB64:E|
00003600  51 55 42 31 30 3a 45 51  55 53 22 5a 6f 6f 6d 20  |QUB10:EQUS"Zoom |
00003610  49 6e 20 20 20 20 20 20  20 20 20 22 0d 12 34 38  |In         "..48|
00003620  20 20 20 20 20 20 20 20  20 45 51 55 42 33 31 3a  |         EQUB31:|
00003630  45 51 55 42 36 34 3a 45  51 55 42 31 32 3a 45 51  |EQUB64:EQUB12:EQ|
00003640  55 53 22 52 65 73 65 74  20 20 20 20 20 20 20 20  |US"Reset        |
00003650  20 20 20 22 0d 12 3e 19  20 20 20 20 20 20 20 20  |   "..>.        |
00003660  20 45 51 55 42 31 37 3a  45 51 55 42 38 0d 12 48  | EQUB17:EQUB8..H|
00003670  38 20 20 20 20 20 20 20  20 20 45 51 55 42 33 31  |8         EQUB31|
00003680  3a 45 51 55 42 36 34 3a  45 51 55 42 31 36 3a 45  |:EQUB64:EQUB16:E|
00003690  51 55 53 22 49 74 65 72  61 74 69 6f 6e 73 20 20  |QUS"Iterations  |
000036a0  20 20 20 20 22 0d 12 52  38 20 20 20 20 20 20 20  |    "..R8       |
000036b0  20 20 45 51 55 42 33 31  3a 45 51 55 42 36 34 3a  |  EQUB31:EQUB64:|
000036c0  45 51 55 42 31 38 3a 45  51 55 53 22 43 6f 6c 6f  |EQUB18:EQUS"Colo|
000036d0  75 72 20 43 79 63 6c 69  6e 67 20 20 22 0d 12 5c  |ur Cycling  "..\|
000036e0  38 20 20 20 20 20 20 20  20 20 45 51 55 42 33 31  |8         EQUB31|
000036f0  3a 45 51 55 42 36 34 3a  45 51 55 42 32 30 3a 45  |:EQUB64:EQUB20:E|
00003700  51 55 53 22 53 61 76 65  20 53 63 72 65 65 6e 20  |QUS"Save Screen |
00003710  20 20 20 20 22 0d 12 66  19 20 20 20 20 20 20 20  |    "..f.       |
00003720  20 20 45 51 55 42 31 37  3a 45 51 55 42 36 0d 12  |  EQUB17:EQUB6..|
00003730  70 38 20 20 20 20 20 20  20 20 20 45 51 55 42 33  |p8         EQUB3|
00003740  31 3a 45 51 55 42 36 34  3a 45 51 55 42 32 38 3a  |1:EQUB64:EQUB28:|
00003750  45 51 55 53 22 44 65 73  6b 74 6f 70 20 20 20 20  |EQUS"Desktop    |
00003760  20 20 20 20 20 22 0d 12  7a 38 20 20 20 20 20 20  |     "..z8      |
00003770  20 20 20 45 51 55 42 33  31 3a 45 51 55 42 36 34  |   EQUB31:EQUB64|
00003780  3a 45 51 55 42 33 30 3a  45 51 55 53 22 51 75 69  |:EQUB30:EQUS"Qui|
00003790  74 20 50 72 6f 67 72 61  6d 20 20 20 20 22 0d 12  |t Program    "..|
000037a0  84 21 20 20 20 20 20 20  20 20 20 45 51 55 42 31  |.!         EQUB1|
000037b0  37 3a 45 51 55 42 31 32  38 3a 45 51 55 42 30 0d  |7:EQUB128:EQUB0.|
000037c0  12 8e 12 20 20 20 20 20  20 20 20 20 41 4c 49 47  |...         ALIG|
000037d0  4e 0d 12 98 17 20 20 20  20 20 20 20 20 20 42 4c  |N....         BL|
000037e0  20 70 6c 6f 74 74 65 72  0d 12 a2 1a 20 20 20 20  | plotter....    |
000037f0  20 20 20 20 20 41 44 52  20 52 31 2c 70 6c 6f 74  |     ADR R1,plot|
00003800  61 64 0d 12 ac 18 20 20  20 20 20 20 20 20 20 4c  |ad....         L|
00003810  44 52 20 52 31 2c 5b 52  31 5d 0d 12 b6 18 20 20  |DR R1,[R1]....  |
00003820  20 20 20 20 20 20 20 53  54 52 20 52 30 2c 5b 52  |       STR R0,[R|
00003830  31 5d 0d 12 c0 16 20 20  20 20 20 20 20 20 20 4d  |1]....         M|
00003840  4f 56 20 52 30 2c 23 31  0d 12 ca 1a 20 20 20 20  |OV R0,#1....    |
00003850  20 20 20 20 20 41 44 52  20 52 31 2c 70 72 65 76  |     ADR R1,prev|
00003860  61 64 0d 12 d4 18 20 20  20 20 20 20 20 20 20 4c  |ad....         L|
00003870  44 52 20 52 31 2c 5b 52  31 5d 0d 12 de 18 20 20  |DR R1,[R1]....  |
00003880  20 20 20 20 20 20 20 53  54 52 20 52 30 2c 5b 52  |       STR R0,[R|
00003890  31 5d 0d 12 e8 1c 20 20  20 20 20 20 20 20 20 4c  |1]....         L|
000038a0  44 4d 46 44 20 52 31 33  21 2c 7b 50 43 7d 0d 12  |DMFD R13!,{PC}..|
000038b0  f2 1d 2e 72 65 73 74 61  72 74 20 53 54 4d 46 44  |...restart STMFD|
000038c0  20 52 31 33 21 2c 7b 52  31 34 7d 0d 12 fc 17 20  | R13!,{R14}.... |
000038d0  20 20 20 20 20 20 20 20  53 57 49 20 32 35 36 2b  |        SWI 256+|
000038e0  32 32 0d 13 06 17 20 20  20 20 20 20 20 20 20 53  |22....         S|
000038f0  57 49 20 32 35 36 2b 31  35 0d 13 10 18 20 20 20  |WI 256+15....   |
00003900  20 20 20 20 20 20 4d 4f  56 20 52 30 2c 23 31 30  |      MOV R0,#10|
00003910  36 0d 13 1a 16 20 20 20  20 20 20 20 20 20 4d 4f  |6....         MO|
00003920  56 20 52 31 2c 23 31 0d  13 24 1a 20 20 20 20 20  |V R1,#1..$.     |
00003930  20 20 20 20 53 57 49 20  22 4f 53 5f 42 79 74 65  |    SWI "OS_Byte|
00003940  22 0d 13 2e 17 20 20 20  20 20 20 20 20 20 53 57  |"....         SW|
00003950  49 20 32 35 36 2b 32 33  0d 13 38 16 20 20 20 20  |I 256+23..8.    |
00003960  20 20 20 20 20 53 57 49  20 32 35 36 2b 31 0d 13  |     SWI 256+1..|
00003970  42 14 20 20 20 20 20 20  20 20 20 53 57 49 20 32  |B.         SWI 2|
00003980  35 36 0d 13 4c 14 20 20  20 20 20 20 20 20 20 53  |56..L.         S|
00003990  57 49 20 32 35 36 0d 13  56 14 20 20 20 20 20 20  |WI 256..V.      |
000039a0  20 20 20 53 57 49 20 32  35 36 0d 13 60 14 20 20  |   SWI 256..`.  |
000039b0  20 20 20 20 20 20 20 53  57 49 20 32 35 36 0d 13  |       SWI 256..|
000039c0  6a 14 20 20 20 20 20 20  20 20 20 53 57 49 20 32  |j.         SWI 2|
000039d0  35 36 0d 13 74 14 20 20  20 20 20 20 20 20 20 53  |56..t.         S|
000039e0  57 49 20 32 35 36 0d 13  7e 14 20 20 20 20 20 20  |WI 256..~.      |
000039f0  20 20 20 53 57 49 20 32  35 36 0d 13 88 14 20 20  |   SWI 256....  |
00003a00  20 20 20 20 20 20 20 53  57 49 20 32 35 36 0d 13  |       SWI 256..|
00003a10  92 17 20 20 20 20 20 20  20 20 20 42 4c 20 6c 6f  |..         BL lo|
00003a20  61 64 73 63 72 0d 13 9c  1c 20 20 20 20 20 20 20  |adscr....       |
00003a30  20 20 4c 44 4d 46 44 20  52 31 33 21 2c 7b 50 43  |  LDMFD R13!,{PC|
00003a40  7d 0d 13 a6 0f 2e 6d 61  6e 64 65 6c 70 6c 6f 74  |}.....mandelplot|
00003a50  0d 13 b0 1d 20 20 20 20  20 20 20 20 20 53 54 4d  |....         STM|
00003a60  46 44 20 52 31 33 21 2c  7b 52 31 34 7d 0d 13 ba  |FD R13!,{R14}...|
00003a70  1a 2e 6d 70 6c 6f 6f 70  20 20 41 44 52 20 52 30  |..mploop  ADR R0|
00003a80  2c 70 6c 6f 74 61 64 0d  13 c4 18 20 20 20 20 20  |,plotad....     |
00003a90  20 20 20 20 4c 44 52 20  52 30 2c 5b 52 30 5d 0d  |    LDR R0,[R0].|
00003aa0  13 ce 18 20 20 20 20 20  20 20 20 20 4c 44 52 20  |...         LDR |
00003ab0  52 30 2c 5b 52 30 5d 0d  13 d8 16 20 20 20 20 20  |R0,[R0]....     |
00003ac0  20 20 20 20 43 4d 50 20  52 30 2c 23 31 0d 13 e2  |    CMP R0,#1...|
00003ad0  17 20 20 20 20 20 20 20  20 20 42 4e 45 20 6e 6f  |.         BNE no|
00003ae0  70 6c 6f 74 0d 13 ec 18  20 20 20 20 20 20 20 20  |plot....        |
00003af0  20 42 4c 20 63 6f 6e 74  70 6c 6f 74 0d 13 f6 1a  | BL contplot....|
00003b00  20 20 20 20 20 20 20 20  20 41 44 52 20 52 31 2c  |         ADR R1,|
00003b10  70 6c 6f 74 61 64 0d 14  00 18 20 20 20 20 20 20  |plotad....      |
00003b20  20 20 20 4c 44 52 20 52  31 2c 5b 52 31 5d 0d 14  |   LDR R1,[R1]..|
00003b30  0a 18 20 20 20 20 20 20  20 20 20 53 54 52 20 52  |..         STR R|
00003b40  30 2c 5b 52 31 5d 0d 14  14 1b 2e 6e 6f 70 6c 6f  |0,[R1].....noplo|
00003b50  74 20 20 53 57 49 20 22  4f 53 5f 4d 6f 75 73 65  |t  SWI "OS_Mouse|
00003b60  22 0d 14 1e 16 20 20 20  20 20 20 20 20 20 43 4d  |"....         CM|
00003b70  50 20 52 32 2c 23 30 0d  14 28 17 20 20 20 20 20  |P R2,#0..(.     |
00003b80  20 20 20 20 42 45 51 20  6d 70 6c 6f 6f 70 0d 14  |    BEQ mploop..|
00003b90  32 19 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |2.         CMP R|
00003ba0  30 2c 23 31 30 32 34 0d  14 3c 17 20 20 20 20 20  |0,#1024..<.     |
00003bb0  20 20 20 20 42 43 43 20  62 6f 78 6f 75 74 0d 14  |    BCC boxout..|
00003bc0  46 17 20 20 20 20 20 20  20 20 20 42 20 66 75 6e  |F.         B fun|
00003bd0  63 74 69 6f 6e 0d 14 50  27 2e 73 63 68 6f 6f 73  |ction..P'.schoos|
00003be0  65 20 45 51 55 53 20 22  53 43 48 4f 4f 53 45 20  |e EQUS "SCHOOSE |
00003bf0  6c 6f 67 6f 22 3a 45 51  55 44 20 30 0d 14 5a 12  |logo":EQUD 0..Z.|
00003c00  20 20 20 20 20 20 20 20  20 41 4c 49 47 4e 0d 14  |         ALIGN..|
00003c10  64 15 2e 70 6c 6f 74 79  20 20 20 45 51 55 44 20  |d..ploty   EQUD |
00003c20  37 37 35 0d 14 6e 12 20  20 20 20 20 20 20 20 20  |775..n.         |
00003c30  41 4c 49 47 4e 0d 14 78  05 3a 0d 14 82 18 2e 62  |ALIGN..x.:.....b|
00003c40  6f 78 6f 75 74 20 20 42  4c 20 6d 6f 75 73 65 62  |oxout  BL mouseb|
00003c50  6f 78 0d 14 8c 17 20 20  20 20 20 20 20 20 20 42  |ox....         B|
00003c60  4c 20 73 61 76 65 73 63  72 0d 14 96 1a 20 20 20  |L savescr....   |
00003c70  20 20 20 20 20 20 53 57  49 22 4f 53 5f 4d 6f 75  |      SWI"OS_Mou|
00003c80  73 65 22 0d 14 a0 19 20  20 20 20 20 20 20 20 20  |se"....         |
00003c90  41 44 52 20 52 32 2c 78  62 6f 78 61 0d 14 aa 18  |ADR R2,xboxa....|
00003ca0  20 20 20 20 20 20 20 20  20 53 54 52 20 52 30 2c  |         STR R0,|
00003cb0  5b 52 32 5d 0d 14 b4 19  20 20 20 20 20 20 20 20  |[R2]....        |
00003cc0  20 41 44 52 20 52 32 2c  79 62 6f 78 61 0d 14 be  | ADR R2,yboxa...|
00003cd0  18 20 20 20 20 20 20 20  20 20 53 54 52 20 52 31  |.         STR R1|
00003ce0  2c 5b 52 32 5d 0d 14 c8  19 2e 62 6f 78 6f 75 74  |,[R2].....boxout|
00003cf0  6c 20 43 4d 50 20 52 30  2c 23 31 30 32 34 0d 14  |l CMP R0,#1024..|
00003d00  d2 1b 20 20 20 20 20 20  20 20 20 4d 4f 56 43 53  |..         MOVCS|
00003d10  20 52 30 2c 23 31 30 32  34 0d 14 dc 1b 20 20 20  | R0,#1024....   |
00003d20  20 20 20 20 20 20 53 55  42 43 53 20 52 30 2c 52  |      SUBCS R0,R|
00003d30  30 2c 23 31 0d 14 e6 19  20 20 20 20 20 20 20 20  |0,#1....        |
00003d40  20 41 44 52 20 52 32 2c  78 62 6f 78 62 0d 14 f0  | ADR R2,xboxb...|
00003d50  18 20 20 20 20 20 20 20  20 20 53 54 52 20 52 30  |.         STR R0|
00003d60  2c 5b 52 32 5d 0d 14 fa  19 20 20 20 20 20 20 20  |,[R2]....       |
00003d70  20 20 41 44 52 20 52 32  2c 79 62 6f 78 62 0d 15  |  ADR R2,yboxb..|
00003d80  04 18 20 20 20 20 20 20  20 20 20 53 54 52 20 52  |..         STR R|
00003d90  31 2c 5b 52 32 5d 0d 15  0e 1a 20 20 20 20 20 20  |1,[R2]....      |
00003da0  20 20 20 41 44 52 20 52  32 2c 77 69 6d 70 61 64  |   ADR R2,wimpad|
00003db0  0d 15 18 18 20 20 20 20  20 20 20 20 20 4c 44 52  |....         LDR|
00003dc0  20 52 32 2c 5b 52 32 5d  0d 15 22 16 20 20 20 20  | R2,[R2]..".    |
00003dd0  20 20 20 20 20 4d 4f 56  20 52 30 2c 23 31 0d 15  |     MOV R0,#1..|
00003de0  2c 18 20 20 20 20 20 20  20 20 20 53 54 52 20 52  |,.         STR R|
00003df0  30 2c 5b 52 32 5d 0d 15  36 18 20 20 20 20 20 20  |0,[R2]..6.      |
00003e00  20 20 20 42 4c 20 6d 6f  75 73 65 62 6f 78 0d 15  |   BL mousebox..|
00003e10  40 18 20 20 20 20 20 20  20 20 20 42 4c 20 63 6f  |@.         BL co|
00003e20  6e 74 70 6c 6f 74 0d 15  4a 18 20 20 20 20 20 20  |ntplot..J.      |
00003e30  20 20 20 42 4c 20 6d 6f  75 73 65 62 6f 78 0d 15  |   BL mousebox..|
00003e40  54 1b 20 20 20 20 20 20  20 20 20 53 57 49 20 22  |T.         SWI "|
00003e50  4f 53 5f 4d 6f 75 73 65  22 0d 15 5e 16 20 20 20  |OS_Mouse"..^.   |
00003e60  20 20 20 20 20 20 43 4d  50 20 52 32 2c 23 30 0d  |      CMP R2,#0.|
00003e70  15 68 18 20 20 20 20 20  20 20 20 20 42 4e 45 20  |.h.         BNE |
00003e80  62 6f 78 6f 75 74 6c 0d  15 72 1a 20 20 20 20 20  |boxoutl..r.     |
00003e90  20 20 20 20 41 44 52 20  52 32 2c 77 69 6d 70 61  |    ADR R2,wimpa|
00003ea0  64 0d 15 7c 18 20 20 20  20 20 20 20 20 20 4c 44  |d..|.         LD|
00003eb0  52 20 52 32 2c 5b 52 32  5d 0d 15 86 16 20 20 20  |R R2,[R2]....   |
00003ec0  20 20 20 20 20 20 4d 4f  56 20 52 30 2c 23 30 0d  |      MOV R0,#0.|
00003ed0  15 90 18 20 20 20 20 20  20 20 20 20 53 54 52 20  |...         STR |
00003ee0  52 30 2c 5b 52 32 5d 0d  15 9a 17 20 20 20 20 20  |R0,[R2]....     |
00003ef0  20 20 20 20 42 4c 20 6c  6f 61 64 73 63 72 0d 15  |    BL loadscr..|
00003f00  a4 18 20 20 20 20 20 20  20 20 20 42 4c 20 6d 6f  |..         BL mo|
00003f10  75 73 65 62 6f 78 0d 15  ae 15 20 20 20 20 20 20  |usebox....      |
00003f20  20 20 20 42 20 6d 70 6c  6f 6f 70 0d 15 b8 1a 2e  |   B mploop.....|
00003f30  70 6c 6f 74 61 64 20 20  45 51 55 44 20 70 6c 6f  |plotad  EQUD plo|
00003f40  74 73 74 61 74 0d 15 c2  1a 2e 77 69 6d 70 61 64  |tstat.....wimpad|
00003f50  20 20 45 51 55 44 20 77  69 6d 70 73 74 61 74 0d  |  EQUD wimpstat.|
00003f60  15 cc 16 2e 70 72 65 76  61 64 20 20 45 51 55 44  |....prevad  EQUD|
00003f70  20 70 72 65 76 0d 15 d6  1e 2e 66 75 6e 63 74 69  | prev.....functi|
00003f80  6f 6e 20 4d 4f 56 20 52  31 2c 52 31 2c 4c 53 52  |on MOV R1,R1,LSR|
00003f90  20 23 35 0d 15 e0 16 20  20 20 20 20 20 20 20 20  | #5....         |
00003fa0  43 4d 50 20 52 31 2c 23  31 0d 15 ea 19 20 20 20  |CMP R1,#1....   |
00003fb0  20 20 20 20 20 20 42 45  51 20 71 75 69 74 74 61  |      BEQ quitta|
00003fc0  73 6b 0d 15 f4 16 20 20  20 20 20 20 20 20 20 43  |sk....         C|
00003fd0  4d 50 20 52 31 2c 23 33  0d 15 fe 18 20 20 20 20  |MP R1,#3....    |
00003fe0  20 20 20 20 20 42 45 51  20 64 65 73 6b 74 6f 70  |     BEQ desktop|
00003ff0  0d 16 08 17 20 20 20 20  20 20 20 20 20 43 4d 50  |....         CMP|
00004000  20 52 31 2c 23 31 31 0d  16 12 19 20 20 20 20 20  | R1,#11....     |
00004010  20 20 20 20 42 45 51 20  73 63 72 73 74 6f 72 65  |    BEQ scrstore|
00004020  0d 16 1c 17 20 20 20 20  20 20 20 20 20 43 4d 50  |....         CMP|
00004030  20 52 31 2c 23 31 33 0d  16 26 19 20 20 20 20 20  | R1,#13..&.     |
00004040  20 20 20 20 42 45 51 20  63 6f 6c 63 79 63 6c 65  |    BEQ colcycle|
00004050  0d 16 30 17 20 20 20 20  20 20 20 20 20 43 4d 50  |..0.         CMP|
00004060  20 52 31 2c 23 31 35 0d  16 3a 18 20 20 20 20 20  | R1,#15..:.     |
00004070  20 20 20 20 42 45 51 20  69 74 65 72 61 74 65 0d  |    BEQ iterate.|
00004080  16 44 17 20 20 20 20 20  20 20 20 20 43 4d 50 20  |.D.         CMP |
00004090  52 31 2c 23 31 39 0d 16  4e 19 20 20 20 20 20 20  |R1,#19..N.      |
000040a0  20 20 20 42 45 51 20 72  65 73 65 74 70 6f 73 0d  |   BEQ resetpos.|
000040b0  16 58 17 20 20 20 20 20  20 20 20 20 43 4d 50 20  |.X.         CMP |
000040c0  52 31 2c 23 32 31 0d 16  62 17 20 20 20 20 20 20  |R1,#21..b.      |
000040d0  20 20 20 42 45 51 20 7a  6f 6f 6d 69 6e 0d 16 6c  |   BEQ zoomin..l|
000040e0  15 20 20 20 20 20 20 20  20 20 42 20 6d 70 6c 6f  |.         B mplo|
000040f0  6f 70 0d 16 76 05 3a 0d  16 80 20 5c 20 20 20 20  |op..v.:... \    |
00004100  20 20 20 20 20 20 20 20  20 20 20 c8 98 20 46 55  |           .. FU|
00004110  4e 43 54 49 4f 4e 53 0d  16 8a 05 3a 0d 16 94 1c  |NCTIONS....:....|
00004120  2e 64 65 73 6b 74 6f 70  20 4c 44 4d 46 44 20 52  |.desktop LDMFD R|
00004130  31 33 21 2c 7b 50 43 7d  0d 16 9e 18 2e 71 75 69  |13!,{PC}.....qui|
00004140  74 74 61 73 6b 20 42 4c  20 73 61 76 65 73 63 72  |ttask BL savescr|
00004150  0d 16 a8 17 20 20 20 20  20 20 20 20 20 53 57 49  |....         SWI|
00004160  20 32 35 36 2b 33 31 0d  16 b2 14 20 20 20 20 20  | 256+31....     |
00004170  20 20 20 20 53 57 49 20  32 35 36 0d 16 bc 14 20  |    SWI 256.... |
00004180  20 20 20 20 20 20 20 20  53 57 49 20 32 35 36 0d  |        SWI 256.|
00004190  16 c6 1c 20 20 20 20 20  20 20 20 20 53 57 49 20  |...         SWI |
000041a0  22 4f 53 5f 57 72 69 74  65 53 22 0d 16 d0 3c 20  |"OS_WriteS"...< |
000041b0  20 20 20 20 20 20 20 20  45 51 55 42 31 36 3a 45  |        EQUB16:E|
000041c0  51 55 42 31 37 3a 45 51  55 42 31 32 37 3a 45 51  |QUB17:EQUB127:EQ|
000041d0  55 53 22 51 75 69 74 3a  20 41 72 65 20 59 6f 75  |US"Quit: Are You|
000041e0  20 53 75 72 65 3f 22 0d  16 da 28 20 20 20 20 20  | Sure?"...(     |
000041f0  20 20 20 20 45 51 55 42  31 33 3a 45 51 55 42 31  |    EQUB13:EQUB1|
00004200  30 3a 45 51 55 42 31 33  3a 45 51 55 42 31 30 0d  |0:EQUB13:EQUB10.|
00004210  16 e4 3d 20 20 20 20 20  20 20 20 20 45 51 55 53  |..=         EQUS|
00004220  22 43 6c 69 63 6b 20 4c  45 46 54 20 74 6f 20 71  |"Click LEFT to q|
00004230  75 69 74 3b 20 52 49 47  48 54 20 74 6f 20 63 61  |uit; RIGHT to ca|
00004240  6e 63 65 6c 2e 22 3a 45  51 55 42 30 0d 16 ee 12  |ncel.":EQUB0....|
00004250  20 20 20 20 20 20 20 20  20 41 4c 49 47 4e 0d 16  |         ALIGN..|
00004260  f8 1a 2e 73 74 6f 70 63  6c 20 20 53 57 49 22 4f  |...stopcl  SWI"O|
00004270  53 5f 4d 6f 75 73 65 22  0d 17 02 16 20 20 20 20  |S_Mouse"....    |
00004280  20 20 20 20 20 43 4d 50  20 52 32 2c 23 30 0d 17  |     CMP R2,#0..|
00004290  0c 17 20 20 20 20 20 20  20 20 20 42 4e 45 20 73  |..         BNE s|
000042a0  74 6f 70 63 6c 0d 17 16  1a 2e 71 75 69 74 6c 6f  |topcl.....quitlo|
000042b0  70 20 53 57 49 22 4f 53  5f 4d 6f 75 73 65 22 0d  |p SWI"OS_Mouse".|
000042c0  17 20 16 20 20 20 20 20  20 20 20 20 43 4d 50 20  |. .         CMP |
000042d0  52 32 2c 23 34 0d 17 2a  19 20 20 20 20 20 20 20  |R2,#4..*.       |
000042e0  20 20 42 45 51 20 71 75  69 74 6f 6b 61 79 0d 17  |  BEQ quitokay..|
000042f0  34 16 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |4.         CMP R|
00004300  32 2c 23 31 0d 17 3e 19  20 20 20 20 20 20 20 20  |2,#1..>.        |
00004310  20 42 4c 45 51 20 6c 6f  61 64 73 63 72 0d 17 48  | BLEQ loadscr..H|
00004320  17 20 20 20 20 20 20 20  20 20 42 45 51 20 6d 70  |.         BEQ mp|
00004330  6c 6f 6f 70 0d 17 52 16  20 20 20 20 20 20 20 20  |loop..R.        |
00004340  20 42 20 71 75 69 74 6c  6f 70 0d 17 5c 1d 2e 71  | B quitlop..\..q|
00004350  75 69 74 6f 6b 61 79 20  4c 44 4d 46 44 20 52 31  |uitokay LDMFD R1|
00004360  33 21 2c 7b 52 30 7d 0d  17 66 16 20 20 20 20 20  |3!,{R0}..f.     |
00004370  20 20 20 20 4d 4f 56 20  52 30 2c 23 30 0d 17 70  |    MOV R0,#0..p|
00004380  19 20 20 20 20 20 20 20  20 20 53 55 42 20 52 30  |.         SUB R0|
00004390  2c 52 30 2c 23 31 0d 17  7a 16 20 20 20 20 20 20  |,R0,#1..z.      |
000043a0  20 20 20 4d 4f 56 20 52  31 2c 23 30 0d 17 84 16  |   MOV R1,#0....|
000043b0  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 32 2c  |         MOV R2,|
000043c0  23 30 0d 17 8e 19 20 20  20 20 20 20 20 20 20 4d  |#0....         M|
000043d0  4f 56 20 52 33 2c 23 31  32 38 30 0d 17 98 19 20  |OV R3,#1280.... |
000043e0  20 20 20 20 20 20 20 20  4d 4f 56 20 52 34 2c 23  |        MOV R4,#|
000043f0  31 30 32 34 0d 17 a2 23  20 20 20 20 20 20 20 20  |1024...#        |
00004400  20 53 57 49 20 22 57 69  6d 70 5f 46 6f 72 63 65  | SWI "Wimp_Force|
00004410  52 65 64 72 61 77 22 0d  17 ac 1a 20 20 20 20 20  |Redraw"....     |
00004420  20 20 20 20 53 57 49 20  22 4f 53 5f 45 78 69 74  |    SWI "OS_Exit|
00004430  22 0d 17 b6 05 3a 0d 17  c0 1b 5c 20 20 20 20 20  |"....:....\     |
00004440  20 20 20 5a 4f 4f 4d 20  46 55 4e 43 54 49 4f 4e  |   ZOOM FUNCTION|
00004450  53 0d 17 ca 05 3a 0d 17  d4 1d 2e 72 65 73 65 74  |S....:.....reset|
00004460  70 6f 73 20 20 20 20 20  20 20 20 42 4c 20 73 65  |pos        BL se|
00004470  74 75 70 0d 17 de 1f 20  20 20 20 20 20 20 20 20  |tup....         |
00004480  20 20 20 20 20 20 20 20  42 4c 20 70 6c 6f 74 74  |        BL plott|
00004490  65 72 0d 17 e8 1d 20 20  20 20 20 20 20 20 20 20  |er....          |
000044a0  20 20 20 20 20 20 20 42  20 6d 70 6c 6f 6f 70 0d  |       B mploop.|
000044b0  17 f2 05 3a 0d 17 fc 22  2e 7a 6f 6f 6d 69 6e 20  |...:...".zoomin |
000044c0  20 20 20 20 20 20 20 20  20 41 44 52 20 52 30 2c  |         ADR R0,|
000044d0  78 6d 69 6e 61 64 0d 18  06 20 20 20 20 20 20 20  |xminad...       |
000044e0  20 20 20 20 20 20 20 20  20 20 20 4c 44 52 20 52  |           LDR R|
000044f0  30 2c 5b 52 30 5d 0d 18  10 23 20 20 20 20 20 20  |0,[R0]...#      |
00004500  20 20 20 20 20 20 20 20  20 20 20 41 44 52 20 52  |           ADR R|
00004510  31 2c 78 73 74 65 70 61  64 0d 18 1a 20 20 20 20  |1,xstepad...    |
00004520  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |              LD|
00004530  52 20 52 31 2c 5b 52 31  5d 0d 18 24 22 20 20 20  |R R1,[R1]..$"   |
00004540  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 44  |              AD|
00004550  52 20 52 32 2c 79 6d 69  6e 61 64 0d 18 2e 20 20  |R R2,yminad...  |
00004560  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004570  4c 44 52 20 52 32 2c 5b  52 32 5d 0d 18 38 23 20  |LDR R2,[R2]..8# |
00004580  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004590  41 44 52 20 52 33 2c 79  73 74 65 70 61 64 0d 18  |ADR R3,ystepad..|
000045a0  42 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |B               |
000045b0  20 20 20 4c 44 52 20 52  33 2c 5b 52 33 5d 0d 18  |   LDR R3,[R3]..|
000045c0  4c 22 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |L"              |
000045d0  20 20 20 41 44 52 20 52  34 2c 78 62 6f 78 61 74  |   ADR R4,xboxat|
000045e0  0d 18 56 1f 20 20 20 20  20 20 20 20 20 20 20 20  |..V.            |
000045f0  20 20 20 20 4c 44 52 20  52 34 2c 5b 52 34 5d 0d  |    LDR R4,[R4].|
00004600  18 60 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.`              |
00004610  20 20 20 20 4c 44 52 20  52 34 2c 5b 52 34 5d 0d  |    LDR R4,[R4].|
00004620  18 6a 22 20 20 20 20 20  20 20 20 20 20 20 20 20  |.j"             |
00004630  20 20 20 20 41 44 52 20  52 35 2c 78 62 6f 78 62  |    ADR R5,xboxb|
00004640  74 0d 18 74 20 20 20 20  20 20 20 20 20 20 20 20  |t..t            |
00004650  20 20 20 20 20 20 4c 44  52 20 52 35 2c 5b 52 35  |      LDR R5,[R5|
00004660  5d 0d 18 7e 20 20 20 20  20 20 20 20 20 20 20 20  |]..~            |
00004670  20 20 20 20 20 20 4c 44  52 20 52 35 2c 5b 52 35  |      LDR R5,[R5|
00004680  5d 0d 18 88 1e 20 20 20  20 20 20 20 20 20 20 20  |]....           |
00004690  20 20 20 20 20 20 43 4d  50 20 52 34 2c 52 35 0d  |      CMP R4,R5.|
000046a0  18 92 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
000046b0  20 20 20 20 4d 4f 56 43  53 20 52 36 2c 52 34 0d  |    MOVCS R6,R4.|
000046c0  18 9c 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
000046d0  20 20 20 20 4d 4f 56 43  53 20 52 34 2c 52 35 0d  |    MOVCS R4,R5.|
000046e0  18 a6 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
000046f0  20 20 20 20 4d 4f 56 43  53 20 52 35 2c 52 36 0d  |    MOVCS R5,R6.|
00004700  18 b0 22 20 20 20 20 20  20 20 20 20 20 20 20 20  |.."             |
00004710  20 20 20 20 41 44 52 20  52 36 2c 79 62 6f 78 61  |    ADR R6,yboxa|
00004720  74 0d 18 ba 20 20 20 20  20 20 20 20 20 20 20 20  |t...            |
00004730  20 20 20 20 20 20 4c 44  52 20 52 36 2c 5b 52 36  |      LDR R6,[R6|
00004740  5d 0d 18 c4 20 20 20 20  20 20 20 20 20 20 20 20  |]...            |
00004750  20 20 20 20 20 20 4c 44  52 20 52 36 2c 5b 52 36  |      LDR R6,[R6|
00004760  5d 0d 18 ce 30 20 20 20  20 20 20 20 20 20 20 20  |]...0           |
00004770  20 20 20 20 20 20 41 44  52 20 52 37 2c 79 62 6f  |      ADR R7,ybo|
00004780  78 62 74 20 20 20 20 20  5c 20 52 30 3d 78 6d 69  |xbt     \ R0=xmi|
00004790  6e 0d 18 d8 31 20 20 20  20 20 20 20 20 20 20 20  |n...1           |
000047a0  20 20 20 20 20 20 4c 44  52 20 52 37 2c 5b 52 37  |      LDR R7,[R7|
000047b0  5d 20 20 20 20 20 20 20  5c 20 52 31 3d 78 73 74  |]       \ R1=xst|
000047c0  65 70 0d 18 e2 30 20 20  20 20 20 20 20 20 20 20  |ep...0          |
000047d0  20 20 20 20 20 20 20 4c  44 52 20 52 37 2c 5b 52  |       LDR R7,[R|
000047e0  37 5d 20 20 20 20 20 20  20 5c 20 52 32 3d 79 6d  |7]       \ R2=ym|
000047f0  69 6e 0d 18 ec 31 20 20  20 20 20 20 20 20 20 20  |in...1          |
00004800  20 20 20 20 20 20 20 43  4d 50 20 52 36 2c 52 37  |       CMP R6,R7|
00004810  20 20 20 20 20 20 20 20  20 5c 20 52 33 3d 79 73  |         \ R3=ys|
00004820  74 65 70 0d 18 f6 31 20  20 20 20 20 20 20 20 20  |tep...1         |
00004830  20 20 20 20 20 20 20 20  4d 4f 56 43 53 20 52 38  |        MOVCS R8|
00004840  2c 52 36 20 20 20 20 20  20 20 5c 20 52 34 3d 78  |,R6       \ R4=x|
00004850  62 6f 78 61 0d 19 00 31  20 20 20 20 20 20 20 20  |boxa...1        |
00004860  20 20 20 20 20 20 20 20  20 4d 4f 56 43 53 20 52  |         MOVCS R|
00004870  36 2c 52 37 20 20 20 20  20 20 20 5c 20 52 35 3d  |6,R7       \ R5=|
00004880  78 62 6f 78 62 0d 19 0a  31 20 20 20 20 20 20 20  |xboxb...1       |
00004890  20 20 20 20 20 20 20 20  20 20 4d 4f 56 43 53 20  |          MOVCS |
000048a0  52 37 2c 52 38 20 20 20  20 20 20 20 5c 20 52 36  |R7,R8       \ R6|
000048b0  3d 79 62 6f 78 61 0d 19  14 31 45 51 55 44 20 26  |=yboxa...1EQUD &|
000048c0  45 43 46 30 30 31 30 30  20 5c 20 4c 44 46 45 20  |ECF00100 \ LDFE |
000048d0  46 30 2c 5b 52 30 5d 20  20 20 20 20 20 5c 20 52  |F0,[R0]      \ R|
000048e0  37 3d 79 62 6f 78 62 0d  19 1e 21 45 51 55 44 20  |7=yboxb...!EQUD |
000048f0  26 45 43 46 31 31 31 30  30 20 5c 20 4c 44 46 45  |&ECF11100 \ LDFE|
00004900  20 46 31 2c 5b 52 31 5d  0d 19 28 1f 45 51 55 44  | F1,[R1]..(.EQUD|
00004910  20 26 45 45 30 32 34 31  44 32 20 5c 20 46 4c 54  | &EE0241D2 \ FLT|
00004920  45 20 46 32 2c 52 34 0d  19 32 22 45 51 55 44 20  |E F2,R4..2"EQUD |
00004930  26 45 45 31 41 33 31 30  31 20 5c 20 4d 4c 46 45  |&EE1A3101 \ MLFE|
00004940  20 46 33 2c 46 32 2c 46  31 0d 19 3c 22 45 51 55  | F3,F2,F1..<"EQU|
00004950  44 20 26 45 45 30 42 33  31 30 30 20 5c 20 41 44  |D &EE0B3100 \ AD|
00004960  46 45 20 46 33 2c 46 33  2c 46 30 0d 19 46 1f 45  |FE F3,F3,F0..F.E|
00004970  51 55 44 20 26 45 45 30  34 35 31 44 34 20 5c 20  |QUD &EE0451D4 \ |
00004980  46 4c 54 45 20 46 34 2c  52 35 0d 19 50 22 45 51  |FLTE F4,R5..P"EQ|
00004990  55 44 20 26 45 45 31 43  35 31 30 31 20 5c 20 4d  |UD &EE1C5101 \ M|
000049a0  4c 46 45 20 46 35 2c 46  34 2c 46 31 0d 19 5a 22  |LFE F5,F4,F1..Z"|
000049b0  45 51 55 44 20 26 45 45  30 44 35 31 30 30 20 5c  |EQUD &EE0D5100 \|
000049c0  20 41 44 46 45 20 46 35  2c 46 35 2c 46 30 0d 19  | ADFE F5,F5,F0..|
000049d0  64 22 45 51 55 44 20 26  45 45 32 44 35 31 30 33  |d"EQUD &EE2D5103|
000049e0  20 5c 20 53 42 46 45 20  46 35 2c 46 35 2c 46 33  | \ SBFE F5,F5,F3|
000049f0  0d 19 6e 21 20 20 20 20  20 20 20 20 20 20 20 20  |..n!            |
00004a00  20 20 20 20 20 4d 4f 56  20 52 38 2c 23 31 30 32  |     MOV R8,#102|
00004a10  34 0d 19 78 1f 45 51 55  44 20 26 45 45 30 36 38  |4..x.EQUD &EE068|
00004a20  31 44 36 20 5c 20 46 4c  54 45 20 46 36 2c 52 38  |1D6 \ FLTE F6,R8|
00004a30  0d 19 82 22 45 51 55 44  20 26 45 45 34 44 37 31  |..."EQUD &EE4D71|
00004a40  30 36 20 5c 20 44 56 46  45 20 46 37 2c 46 35 2c  |06 \ DVFE F7,F5,|
00004a50  46 36 0d 19 8c 21 45 51  55 44 20 26 45 43 45 30  |F6...!EQUD &ECE0|
00004a60  33 31 30 30 20 5c 20 53  54 46 45 20 46 33 2c 5b  |3100 \ STFE F3,[|
00004a70  52 30 5d 0d 19 96 21 45  51 55 44 20 26 45 43 45  |R0]...!EQUD &ECE|
00004a80  31 37 31 30 30 20 5c 20  53 54 46 45 20 46 37 2c  |17100 \ STFE F7,|
00004a90  5b 52 31 5d 0d 19 a0 05  3a 0d 19 aa 21 45 51 55  |[R1]....:...!EQU|
00004aa0  44 20 26 45 43 46 32 30  31 30 30 20 5c 20 4c 44  |D &ECF20100 \ LD|
00004ab0  46 45 20 46 30 2c 5b 52  32 5d 0d 19 b4 21 45 51  |FE F0,[R2]...!EQ|
00004ac0  55 44 20 26 45 43 46 33  31 31 30 30 20 5c 20 4c  |UD &ECF31100 \ L|
00004ad0  44 46 45 20 46 31 2c 5b  52 33 5d 0d 19 be 1f 45  |DFE F1,[R3]....E|
00004ae0  51 55 44 20 26 45 45 30  32 36 31 44 32 20 5c 20  |QUD &EE0261D2 \ |
00004af0  46 4c 54 45 20 46 32 2c  52 36 0d 19 c8 22 45 51  |FLTE F2,R6..."EQ|
00004b00  55 44 20 26 45 45 31 41  33 31 30 31 20 5c 20 4d  |UD &EE1A3101 \ M|
00004b10  4c 46 45 20 46 33 2c 46  32 2c 46 31 0d 19 d2 22  |LFE F3,F2,F1..."|
00004b20  45 51 55 44 20 26 45 45  30 42 33 31 30 30 20 5c  |EQUD &EE0B3100 \|
00004b30  20 41 44 46 45 20 46 33  2c 46 33 2c 46 30 0d 19  | ADFE F3,F3,F0..|
00004b40  dc 1f 45 51 55 44 20 26  45 45 30 34 37 31 44 34  |..EQUD &EE0471D4|
00004b50  20 5c 20 46 4c 54 45 20  46 34 2c 52 37 0d 19 e6  | \ FLTE F4,R7...|
00004b60  22 45 51 55 44 20 26 45  45 31 43 35 31 30 31 20  |"EQUD &EE1C5101 |
00004b70  5c 20 4d 4c 46 45 20 46  35 2c 46 34 2c 46 31 0d  |\ MLFE F5,F4,F1.|
00004b80  19 f0 22 45 51 55 44 20  26 45 45 30 44 35 31 30  |.."EQUD &EE0D510|
00004b90  30 20 5c 20 41 44 46 45  20 46 35 2c 46 35 2c 46  |0 \ ADFE F5,F5,F|
00004ba0  30 0d 19 fa 22 45 51 55  44 20 26 45 45 32 44 35  |0..."EQUD &EE2D5|
00004bb0  31 30 33 20 5c 20 53 42  46 45 20 46 35 2c 46 35  |103 \ SBFE F5,F5|
00004bc0  2c 46 33 0d 1a 04 22 45  51 55 44 20 26 45 45 34  |,F3..."EQUD &EE4|
00004bd0  44 37 31 30 36 20 5c 20  44 56 46 45 20 46 37 2c  |D7106 \ DVFE F7,|
00004be0  46 35 2c 46 36 0d 1a 0e  21 45 51 55 44 20 26 45  |F5,F6...!EQUD &E|
00004bf0  43 45 32 33 31 30 30 20  5c 20 53 54 46 45 20 46  |CE23100 \ STFE F|
00004c00  33 2c 5b 52 32 5d 0d 1a  18 21 45 51 55 44 20 26  |3,[R2]...!EQUD &|
00004c10  45 43 45 33 37 31 30 30  20 5c 20 53 54 46 45 20  |ECE37100 \ STFE |
00004c20  46 37 2c 5b 52 33 5d 0d  1a 22 1f 20 20 20 20 20  |F7,[R3]..".     |
00004c30  20 20 20 20 20 20 20 20  20 20 20 20 42 4c 20 70  |            BL p|
00004c40  6c 6f 74 74 65 72 0d 1a  2c 1d 20 20 20 20 20 20  |lotter..,.      |
00004c50  20 20 20 20 20 20 20 20  20 20 20 42 20 6d 70 6c  |           B mpl|
00004c60  6f 6f 70 0d 1a 36 05 3a  0d 1a 40 1e 2e 78 6d 69  |oop..6.:..@..xmi|
00004c70  6e 61 64 20 20 20 20 20  20 20 20 20 20 45 51 55  |nad          EQU|
00004c80  44 20 78 6d 69 6e 0d 1a  4a 1e 2e 79 6d 69 6e 61  |D xmin..J..ymina|
00004c90  64 20 20 20 20 20 20 20  20 20 20 45 51 55 44 20  |d          EQUD |
00004ca0  79 6d 69 6e 0d 1a 54 1f  2e 78 73 74 65 70 61 64  |ymin..T..xstepad|
00004cb0  20 20 20 20 20 20 20 20  20 45 51 55 44 20 78 73  |         EQUD xs|
00004cc0  74 65 70 0d 1a 5e 1f 2e  79 73 74 65 70 61 64 20  |tep..^..ystepad |
00004cd0  20 20 20 20 20 20 20 20  45 51 55 44 20 79 73 74  |        EQUD yst|
00004ce0  65 70 0d 1a 68 1f 2e 78  62 6f 78 61 74 20 20 20  |ep..h..xboxat   |
00004cf0  20 20 20 20 20 20 20 45  51 55 44 20 78 62 6f 78  |       EQUD xbox|
00004d00  61 0d 1a 72 1f 2e 79 62  6f 78 61 74 20 20 20 20  |a..r..yboxat    |
00004d10  20 20 20 20 20 20 45 51  55 44 20 79 62 6f 78 61  |      EQUD yboxa|
00004d20  0d 1a 7c 1f 2e 78 62 6f  78 62 74 20 20 20 20 20  |..|..xboxbt     |
00004d30  20 20 20 20 20 45 51 55  44 20 78 62 6f 78 62 0d  |     EQUD xboxb.|
00004d40  1a 86 1f 2e 79 62 6f 78  62 74 20 20 20 20 20 20  |....yboxbt      |
00004d50  20 20 20 20 45 51 55 44  20 79 62 6f 78 62 0d 1a  |    EQUD yboxb..|
00004d60  90 05 3a 0d 1a 9a 1f 5c  20 43 48 41 4e 47 45 20  |..:....\ CHANGE |
00004d70  4d 41 58 49 4d 55 4d 20  49 54 45 52 41 54 49 4f  |MAXIMUM ITERATIO|
00004d80  4e 53 0d 1a a4 1f 2e 69  74 65 72 61 74 65 20 20  |NS.....iterate  |
00004d90  20 20 20 20 20 20 20 42  4c 20 73 61 76 65 73 63  |       BL savesc|
00004da0  72 0d 1a ae 24 20 20 20  20 20 20 20 20 20 20 20  |r...$           |
00004db0  20 20 20 20 20 20 53 57  49 20 22 4f 53 5f 57 72  |      SWI "OS_Wr|
00004dc0  69 74 65 53 22 0d 1a b8  27 20 20 20 20 20 20 20  |iteS"...'       |
00004dd0  20 20 20 20 20 20 20 20  20 20 45 51 55 42 33 31  |          EQUB31|
00004de0  3a 45 51 55 42 31 3a 45  51 55 42 31 0d 1a c2 45  |:EQUB1:EQUB1...E|
00004df0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004e00  20 45 51 55 42 31 36 3a  45 51 55 42 31 37 3a 45  | EQUB16:EQUB17:E|
00004e10  51 55 42 31 32 37 3a 45  51 55 53 22 43 75 72 72  |QUB127:EQUS"Curr|
00004e20  65 6e 74 20 49 74 65 72  61 74 69 6f 6e 73 3a 20  |ent Iterations: |
00004e30  22 0d 1a cc 1b 20 20 20  20 20 20 20 20 20 20 20  |"....           |
00004e40  20 20 20 20 20 20 45 51  55 42 20 30 0d 1a d6 1a  |      EQUB 0....|
00004e50  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004e60  20 41 4c 49 47 4e 0d 1a  e0 24 2e 69 74 65 72 6c  | ALIGN...$.iterl|
00004e70  6f 6f 70 20 20 20 20 20  20 20 20 53 57 49 20 22  |oop        SWI "|
00004e80  4f 53 5f 57 72 69 74 65  53 22 0d 1a ea 28 20 20  |OS_WriteS"...(  |
00004e90  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 45  |               E|
00004ea0  51 55 42 33 31 3a 45 51  55 42 32 31 3a 45 51 55  |QUB31:EQUB21:EQU|
00004eb0  42 31 0d 1a f4 1f 2e 6d  61 78 73 74 72 20 20 20  |B1.....maxstr   |
00004ec0  20 20 20 20 20 20 20 45  51 55 53 20 22 30 32 35  |       EQUS "025|
00004ed0  22 0d 1a fe 1b 20 20 20  20 20 20 20 20 20 20 20  |"....           |
00004ee0  20 20 20 20 20 20 45 51  55 42 20 30 0d 1b 08 1a  |      EQUB 0....|
00004ef0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004f00  20 41 4c 49 47 4e 0d 1b  12 20 2e 67 65 74 6b 65  | ALIGN... .getke|
00004f10  79 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |y          MOV R|
00004f20  30 2c 23 26 38 31 0d 1b  1c 1e 20 20 20 20 20 20  |0,#&81....      |
00004f30  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |           MOV R|
00004f40  31 2c 23 30 0d 1b 26 1e  20 20 20 20 20 20 20 20  |1,#0..&.        |
00004f50  20 20 20 20 20 20 20 20  20 4d 4f 56 20 52 32 2c  |         MOV R2,|
00004f60  23 30 0d 1b 30 22 20 20  20 20 20 20 20 20 20 20  |#0..0"          |
00004f70  20 20 20 20 20 20 20 53  57 49 20 22 4f 53 5f 42  |       SWI "OS_B|
00004f80  79 74 65 22 0d 1b 3a 1f  20 20 20 20 20 20 20 20  |yte"..:.        |
00004f90  20 20 20 20 20 20 20 20  20 42 43 53 20 67 65 74  |         BCS get|
00004fa0  6b 65 79 0d 1b 44 1f 20  20 20 20 20 20 20 20 20  |key..D.         |
00004fb0  20 20 20 20 20 20 20 20  43 4d 50 20 52 31 2c 23  |        CMP R1,#|
00004fc0  31 33 0d 1b 4e 20 20 20  20 20 20 20 20 20 20 20  |13..N           |
00004fd0  20 20 20 20 20 20 20 42  45 51 20 69 74 65 72 67  |       BEQ iterg|
00004fe0  6f 74 0d 1b 58 1f 20 20  20 20 20 20 20 20 20 20  |ot..X.          |
00004ff0  20 20 20 20 20 20 20 43  4d 50 20 52 31 2c 23 34  |       CMP R1,#4|
00005000  38 0d 1b 62 1f 20 20 20  20 20 20 20 20 20 20 20  |8..b.           |
00005010  20 20 20 20 20 20 42 43  43 20 67 65 74 6b 65 79  |      BCC getkey|
00005020  0d 1b 6c 1f 20 20 20 20  20 20 20 20 20 20 20 20  |..l.            |
00005030  20 20 20 20 20 43 4d 50  20 52 31 2c 23 35 38 0d  |     CMP R1,#58.|
00005040  1b 76 1f 20 20 20 20 20  20 20 20 20 20 20 20 20  |.v.             |
00005050  20 20 20 20 42 43 53 20  67 65 74 6b 65 79 0d 1b  |    BCS getkey..|
00005060  80 22 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |."              |
00005070  20 20 20 41 44 52 20 52  30 2c 6d 61 78 73 74 72  |   ADR R0,maxstr|
00005080  0d 1b 8a 24 20 20 20 20  20 20 20 20 20 20 20 20  |...$            |
00005090  20 20 20 20 20 4c 44 52  42 20 52 32 2c 5b 52 30  |     LDRB R2,[R0|
000050a0  2c 23 31 5d 0d 1b 94 21  20 20 20 20 20 20 20 20  |,#1]...!        |
000050b0  20 20 20 20 20 20 20 20  20 53 54 52 42 20 52 32  |         STRB R2|
000050c0  2c 5b 52 30 5d 0d 1b 9e  24 20 20 20 20 20 20 20  |,[R0]...$       |
000050d0  20 20 20 20 20 20 20 20  20 20 4c 44 52 42 20 52  |          LDRB R|
000050e0  32 2c 5b 52 30 2c 23 32  5d 0d 1b a8 24 20 20 20  |2,[R0,#2]...$   |
000050f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 53 54  |              ST|
00005100  52 42 20 52 32 2c 5b 52  30 2c 23 31 5d 0d 1b b2  |RB R2,[R0,#1]...|
00005110  24 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |$               |
00005120  20 20 53 54 52 42 20 52  31 2c 5b 52 30 2c 23 32  |  STRB R1,[R0,#2|
00005130  5d 0d 1b bc 1f 20 20 20  20 20 20 20 20 20 20 20  |]....           |
00005140  20 20 20 20 20 20 42 20  69 74 65 72 6c 6f 6f 70  |      B iterloop|
00005150  0d 1b c6 22 2e 69 74 65  72 67 6f 74 20 20 20 20  |...".itergot    |
00005160  20 20 20 20 20 41 44 52  20 52 30 2c 6d 61 78 73  |     ADR R0,maxs|
00005170  74 72 0d 1b d0 21 20 20  20 20 20 20 20 20 20 20  |tr...!          |
00005180  20 20 20 20 20 20 20 4c  44 52 42 20 52 31 2c 5b  |       LDRB R1,[|
00005190  52 30 5d 0d 1b da 22 20  20 20 20 20 20 20 20 20  |R0]..."         |
000051a0  20 20 20 20 20 20 20 20  53 55 42 20 52 31 2c 52  |        SUB R1,R|
000051b0  31 2c 23 34 38 0d 1b e4  20 20 20 20 20 20 20 20  |1,#48...        |
000051c0  20 20 20 20 20 20 20 20  20 20 4d 4f 56 20 52 32  |          MOV R2|
000051d0  2c 23 31 30 30 0d 1b ee  21 20 20 20 20 20 20 20  |,#100...!       |
000051e0  20 20 20 20 20 20 20 20  20 20 4d 55 4c 20 52 33  |          MUL R3|
000051f0  2c 52 32 2c 52 31 0d 1b  f8 1e 20 20 20 20 20 20  |,R2,R1....      |
00005200  20 20 20 20 20 20 20 20  20 20 20 4d 4f 56 20 52  |           MOV R|
00005210  34 2c 52 33 0d 1c 02 24  20 20 20 20 20 20 20 20  |4,R3...$        |
00005220  20 20 20 20 20 20 20 20  20 4c 44 52 42 20 52 31  |         LDRB R1|
00005230  2c 5b 52 30 2c 23 31 5d  0d 1c 0c 22 20 20 20 20  |,[R0,#1]..."    |
00005240  20 20 20 20 20 20 20 20  20 20 20 20 20 53 55 42  |             SUB|
00005250  20 52 31 2c 52 31 2c 23  34 38 0d 1c 16 1f 20 20  | R1,R1,#48....  |
00005260  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 4d  |               M|
00005270  4f 56 20 52 32 2c 23 31  30 0d 1c 20 21 20 20 20  |OV R2,#10.. !   |
00005280  20 20 20 20 20 20 20 20  20 20 20 20 20 20 4d 55  |              MU|
00005290  4c 20 52 33 2c 52 32 2c  52 31 0d 1c 2a 21 20 20  |L R3,R2,R1..*!  |
000052a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 41  |               A|
000052b0  44 44 20 52 34 2c 52 34  2c 52 33 0d 1c 34 24 20  |DD R4,R4,R3..4$ |
000052c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000052d0  4c 44 52 42 20 52 31 2c  5b 52 30 2c 23 32 5d 0d  |LDRB R1,[R0,#2].|
000052e0  1c 3e 22 20 20 20 20 20  20 20 20 20 20 20 20 20  |.>"             |
000052f0  20 20 20 20 53 55 42 20  52 31 2c 52 31 2c 23 34  |    SUB R1,R1,#4|
00005300  38 0d 1c 48 21 20 20 20  20 20 20 20 20 20 20 20  |8..H!           |
00005310  20 20 20 20 20 20 41 44  44 20 52 34 2c 52 34 2c  |      ADD R4,R4,|
00005320  52 31 0d 1c 52 22 20 20  20 20 20 20 20 20 20 20  |R1..R"          |
00005330  20 20 20 20 20 20 20 41  44 52 20 52 30 2c 6d 61  |       ADR R0,ma|
00005340  78 69 61 64 0d 1c 5c 20  20 20 20 20 20 20 20 20  |xiad..\         |
00005350  20 20 20 20 20 20 20 20  20 4c 44 52 20 52 30 2c  |         LDR R0,|
00005360  5b 52 30 5d 0d 1c 66 20  20 20 20 20 20 20 20 20  |[R0]..f         |
00005370  20 20 20 20 20 20 20 20  20 53 54 52 20 52 34 2c  |         STR R4,|
00005380  5b 52 30 5d 0d 1c 70 1f  20 20 20 20 20 20 20 20  |[R0]..p.        |
00005390  20 20 20 20 20 20 20 20  20 42 4c 20 6c 6f 61 64  |         BL load|
000053a0  73 63 72 0d 1c 7a 1f 20  20 20 20 20 20 20 20 20  |scr..z.         |
000053b0  20 20 20 20 20 20 20 20  42 4c 20 70 6c 6f 74 74  |        BL plott|
000053c0  65 72 0d 1c 84 1d 20 20  20 20 20 20 20 20 20 20  |er....          |
000053d0  20 20 20 20 20 20 20 42  20 6d 70 6c 6f 6f 70 0d  |       B mploop.|
000053e0  1c 8e 1f 2e 6d 61 78 69  61 64 20 20 20 20 20 20  |....maxiad      |
000053f0  20 20 20 20 45 51 55 44  20 6d 61 78 69 74 0d 1c  |    EQUD maxit..|
00005400  98 05 3a 0d 1c a2 0f 5c  20 fb 20 43 59 43 4c 49  |..:....\ . CYCLI|
00005410  4e 47 0d 1c ac 05 3a 0d  1c b6 1e 2e 63 6f 6c 63  |NG....:.....colc|
00005420  79 63 6c 65 20 20 20 20  20 20 20 20 4d 4f 56 20  |ycle        MOV |
00005430  52 35 2c 23 30 0d 1c c0  23 20 20 20 20 20 20 20  |R5,#0...#       |
00005440  20 20 20 20 20 20 20 20  20 20 53 57 49 20 22 4f  |          SWI "O|
00005450  53 5f 4d 6f 75 73 65 22  0d 1c ca 1e 20 20 20 20  |S_Mouse"....    |
00005460  20 20 20 20 20 20 20 20  20 20 20 20 20 43 4d 50  |             CMP|
00005470  20 52 32 2c 23 30 0d 1c  d4 21 20 20 20 20 20 20  | R2,#0...!      |
00005480  20 20 20 20 20 20 20 20  20 20 20 42 4e 45 20 63  |           BNE c|
00005490  6f 6c 63 79 63 6c 65 0d  1c de 1f 20 20 20 20 20  |olcycle....     |
000054a0  20 20 20 20 20 20 20 20  20 20 20 20 42 4c 20 73  |            BL s|
000054b0  61 76 65 73 63 72 0d 1c  e8 1f 2e 63 79 6c 6f 6f  |avescr.....cyloo|
000054c0  70 20 20 20 20 20 20 20  20 20 20 42 4c 20 73 65  |p          BL se|
000054d0  74 63 6f 6c 73 0d 1c f2  21 20 20 20 20 20 20 20  |tcols...!       |
000054e0  20 20 20 20 20 20 20 20  20 20 41 44 44 20 52 35  |          ADD R5|
000054f0  2c 52 35 2c 23 31 0d 1c  fc 21 20 20 20 20 20 20  |,R5,#1...!      |
00005500  20 20 20 20 20 20 20 20  20 20 20 80 20 52 35 2c  |           . R5,|
00005510  52 35 2c 23 32 35 35 0d  1d 06 1e 20 20 20 20 20  |R5,#255....     |
00005520  20 20 20 20 20 20 20 20  20 20 20 20 4d 4f 56 20  |            MOV |
00005530  52 30 2c 23 30 0d 1d 10  21 2e 77 61 73 74 65 74  |R0,#0...!.wastet|
00005540  69 6d 65 20 20 20 20 20  20 20 41 44 44 20 52 30  |ime       ADD R0|
00005550  2c 52 30 2c 23 31 0d 1d  1a 22 20 20 20 20 20 20  |,R0,#1..."      |
00005560  20 20 20 20 20 20 20 20  20 20 20 43 4d 50 20 52  |           CMP R|
00005570  30 2c 23 26 31 30 30 30  0d 1d 24 22 20 20 20 20  |0,#&1000..$"    |
00005580  20 20 20 20 20 20 20 20  20 20 20 20 20 42 4e 45  |             BNE|
00005590  20 77 61 73 74 65 74 69  6d 65 0d 1d 2e 23 20 20  | wastetime...#  |
000055a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
000055b0  57 49 20 22 4f 53 5f 4d  6f 75 73 65 22 0d 1d 38  |WI "OS_Mouse"..8|
000055c0  1e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
000055d0  20 20 43 4d 50 20 52 32  2c 23 30 0d 1d 42 1f 20  |  CMP R2,#0..B. |
000055e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000055f0  42 45 51 20 63 79 6c 6f  6f 70 0d 1d 4c 24 20 20  |BEQ cyloop..L$  |
00005600  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 53  |               S|
00005610  57 49 20 22 4f 53 5f 57  72 69 74 65 53 22 0d 1d  |WI "OS_WriteS"..|
00005620  56 28 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |V(              |
00005630  20 20 20 45 51 55 42 32  32 3a 45 51 55 42 31 35  |   EQUB22:EQUB15|
00005640  3a 45 51 55 42 30 0d 1d  60 1a 20 20 20 20 20 20  |:EQUB0..`.      |
00005650  20 20 20 20 20 20 20 20  20 20 20 41 4c 49 47 4e  |           ALIGN|
00005660  0d 1d 6a 20 20 20 20 20  20 20 20 20 20 20 20 20  |..j             |
00005670  20 20 20 20 20 4d 4f 56  20 52 30 2c 23 31 30 36  |     MOV R0,#106|
00005680  0d 1d 74 1e 20 20 20 20  20 20 20 20 20 20 20 20  |..t.            |
00005690  20 20 20 20 20 4d 4f 56  20 52 31 2c 23 31 0d 1d  |     MOV R1,#1..|
000056a0  7e 22 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |~"              |
000056b0  20 20 20 53 57 49 20 22  4f 53 5f 42 79 74 65 22  |   SWI "OS_Byte"|
000056c0  0d 1d 88 1f 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
000056d0  20 20 20 20 20 42 4c 20  6c 6f 61 64 73 63 72 0d  |     BL loadscr.|
000056e0  1d 92 1d 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
000056f0  20 20 20 20 42 20 6d 70  6c 6f 6f 70 0d 1d 9c 05  |    B mploop....|
00005700  3a 0d 1d a6 1e 2e 73 65  74 63 6f 6c 73 20 20 20  |:.....setcols   |
00005710  20 20 20 20 20 20 4d 4f  56 20 52 34 2c 23 31 0d  |      MOV R4,#1.|
00005720  1d b0 1e 2e 73 65 74 6c  6f 6f 70 20 20 20 20 20  |....setloop     |
00005730  20 20 20 20 4d 4f 56 20  52 33 2c 52 34 0d 1d ba  |    MOV R3,R4...|
00005740  21 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |!               |
00005750  20 20 41 44 44 20 52 33  2c 52 33 2c 52 35 0d 1d  |  ADD R3,R3,R5..|
00005760  c4 21 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.!              |
00005770  20 20 20 80 20 52 33 2c  52 33 2c 23 31 32 37 0d  |   . R3,R3,#127.|
00005780  1d ce 27 20 20 20 20 20  20 20 20 20 20 20 20 20  |..'             |
00005790  20 20 20 20 41 44 52 20  52 32 2c 28 76 64 75 63  |    ADR R2,(vduc|
000057a0  6f 6c 73 2b 32 29 0d 1d  d8 21 20 20 20 20 20 20  |ols+2)...!      |
000057b0  20 20 20 20 20 20 20 20  20 20 20 53 54 52 42 20  |           STRB |
000057c0  52 33 2c 5b 52 32 5d 0d  1d e2 27 20 20 20 20 20  |R3,[R2]...'     |
000057d0  20 20 20 20 20 20 20 20  20 20 20 20 41 44 52 20  |            ADR |
000057e0  52 32 2c 28 76 64 75 63  6f 6c 73 2b 31 29 0d 1d  |R2,(vducols+1)..|
000057f0  ec 21 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.!              |
00005800  20 20 20 53 54 52 42 20  52 34 2c 5b 52 32 5d 0d  |   STRB R4,[R2].|
00005810  1d f6 24 20 20 20 20 20  20 20 20 20 20 20 20 20  |..$             |
00005820  20 20 20 20 53 57 49 20  22 4f 53 5f 57 72 69 74  |    SWI "OS_Writ|
00005830  65 53 22 0d 1e 00 2d 2e  76 64 75 63 6f 6c 73 20  |eS"...-.vducols |
00005840  20 20 20 20 20 20 20 20  45 51 55 42 31 39 3a 45  |        EQUB19:E|
00005850  51 55 42 31 3a 45 51 55  42 31 3a 45 51 55 42 30  |QUB1:EQUB1:EQUB0|
00005860  0d 1e 0a 1c 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
00005870  20 20 20 20 20 53 57 49  20 32 35 36 0d 1e 14 1c  |     SWI 256....|
00005880  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00005890  20 53 57 49 20 32 35 36  0d 1e 1e 1c 20 20 20 20  | SWI 256....    |
000058a0  20 20 20 20 20 20 20 20  20 20 20 20 20 53 57 49  |             SWI|
000058b0  20 32 35 36 0d 1e 28 1c  20 20 20 20 20 20 20 20  | 256..(.        |
000058c0  20 20 20 20 20 20 20 20  20 53 57 49 20 32 35 36  |         SWI 256|
000058d0  0d 1e 32 21 20 20 20 20  20 20 20 20 20 20 20 20  |..2!            |
000058e0  20 20 20 20 20 41 44 44  20 52 34 2c 52 34 2c 23  |     ADD R4,R4,#|
000058f0  31 0d 1e 3c 20 20 20 20  20 20 20 20 20 20 20 20  |1..<            |
00005900  20 20 20 20 20 20 43 4d  50 20 52 34 2c 23 32 35  |      CMP R4,#25|
00005910  36 0d 1e 46 20 20 20 20  20 20 20 20 20 20 20 20  |6..F            |
00005920  20 20 20 20 20 20 42 4e  45 20 73 65 74 6c 6f 6f  |      BNE setloo|
00005930  70 0d 1e 50 1f 20 20 20  20 20 20 20 20 20 20 20  |p..P.           |
00005940  20 20 20 20 20 20 4d 4f  56 20 50 43 2c 52 31 34  |      MOV PC,R14|
00005950  0d 1e 5a 05 3a 0d 1e 64  0f 5c 20 53 43 52 45 45  |..Z.:..d.\ SCREE|
00005960  4e 20 c7 9a 0d 1e 6e 05  3a 0d 1e 78 23 2e 73 63  |N ....n.:..x#.sc|
00005970  72 73 74 6f 72 65 20 20  20 20 20 20 20 20 41 44  |rstore        AD|
00005980  52 20 52 30 2c 72 61 6d  64 69 73 63 0d 1e 82 21  |R R0,ramdisc...!|
00005990  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000059a0  20 53 57 49 20 22 4f 53  5f 43 4c 49 22 0d 1e 8c  | SWI "OS_CLI"...|
000059b0  22 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |"               |
000059c0  20 20 41 44 52 20 52 30  2c 73 63 72 73 61 76 0d  |  ADR R0,scrsav.|
000059d0  1e 96 21 20 20 20 20 20  20 20 20 20 20 20 20 20  |..!             |
000059e0  20 20 20 20 53 57 49 20  22 4f 53 5f 43 4c 49 22  |    SWI "OS_CLI"|
000059f0  0d 1e a0 1d 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
00005a00  20 20 20 20 20 42 20 6d  70 6c 6f 6f 70 0d 1e aa  |     B mploop...|
00005a10  24 2e 72 61 6d 64 69 73  63 20 20 20 20 20 20 20  |$.ramdisc       |
00005a20  20 20 45 51 55 53 22 52  41 4d 22 3a 45 51 55 44  |  EQUS"RAM":EQUD|
00005a30  30 0d 1e b4 35 2e 73 63  72 73 61 76 20 20 20 20  |0...5.scrsav    |
00005a40  20 20 20 20 20 20 45 51  55 53 22 53 43 52 45 45  |      EQUS"SCREE|
00005a50  4e 53 41 56 45 20 6d 61  6e 64 65 6c 73 63 72 22  |NSAVE mandelscr"|
00005a60  3a 45 51 55 44 30 0d 1e  be 05 3a 0d 1e c8 0b 2e  |:EQUD0....:.....|
00005a70  73 63 72 65 65 6e 0d 1e  d2 05 5d 0d 1e dc 05 ed  |screen....].....|
00005a80  0d 1e e6 30 f4 4f 53 43  4c 49 20 28 22 4d 45 4d  |...0.OSCLI ("MEM|
00005a90  4f 52 59 49 20 22 2b 53  54 52 24 7e 7a 6f 6f 6d  |ORYI "+STR$~zoom|
00005aa0  69 6e 2b 22 20 2b 20 31  30 30 22 29 3a 45 4e 44  |in+" + 100"):END|
00005ab0  0d 1e f0 05 e1 0d ff                              |.......|
00005ab7