Home » Archimedes archive » Acorn User » AU 1994-Xmas.adf » Programs » StarInfo/Bower/MemSource
StarInfo/Bower/MemSource
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 » Archimedes archive » Acorn User » AU 1994-Xmas.adf » Programs |
Filename: | StarInfo/Bower/MemSource |
Read OK: | ✔ |
File size: | 1CC8 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
1REM >MemSource 2REM LEN Andrew Bower 1994 3: 4save$="MemUtil" 5*FX1,3 6*RMEnsure UtilityModule 3.00 FX1,2 7SYS "OS_Byte",1 TO ,osver% 8: 9DIM code 20480 10L%=code+20460 11FOR pass=%1100 TO %1110 STEP %10 12O%=code 13P%=0 14PROCcode 15NEXT pass 16SYS "OS_File",10,save$,&FFC,,code,O% 17END 18: 19DEF FNname(s$) :REM used for the table entries 20n=(32-LEN(s$))DIV8 21m=(32-LEN(s$))MOD8 22IF m THEN n+=1 23[OPT pass 24DCB LEN(s$)+n+2 25EQUS s$+STRING$(n,CHR$9)+CHR$0 :REM to tabulate it 26] 27=LEN(s$) 28: 29DEF PROCcode 30[OPT pass 31.start 32STR R14,retaddr 33LDRB R0,[R1]:CMP R0,#0:ADREQ R1,default-2048:ADDEQ R1,R1,#2048 34BL readargs 35LDR R0,[R11,#1<<2]:TEQ R0,#0: BLNE syntax 36LDR R0,[R11,#3<<2]:TEQ R0,#0: MOVNE R9,#0: BLNE change 37LDR R0,[R11,#4<<2]:TEQ R0,#0: MOVNE R9,#1: BLNE change 38LDR R0,[R11,#5<<2]:TEQ R0,#0: MOVNE R9,#2: BLNE change 39LDR R0,[R11,#6<<2]:TEQ R0,#0: MOVNE R9,#3: BLNE change 40LDR R0,[R11,#7<<2]:TEQ R0,#0: MOVNE R9,#4: BLNE change 41LDR R0,[R11,#8<<2]:TEQ R0,#0: MOVNE R9,#5: BLNE change 42LDR R0,[R11,#0<<2]:TEQ R0,#0: BLNE showinfo 43LDR R0,[R11,#2<<2]:TEQ R0,#0: BLNE interactive 44LDR PC,retaddr 45: 46EQUS "�A.Bower" 47ALIGN 48: 49.readargs 50ADR R0,keyword 51ADD R11,R12,#512 52MOV R2,R11 53MOV R3,#256 54SWI "XOS_ReadArgs" 55BVS error 56MOV PC,R14 57.keyword 58EQUS"display/s,help/s,interactive/s," 59EQUS"system,rma,screen,sprite,font,ramfs" 60EQUB 0 61.syntax 62ADR R0,syntax_string 63MOV R1,#0 64ADR R2,progname 65SWI "XOS_PrettyPrint" 66BVS error 67MOV PC,R14 68.progname 69EQUS "MemUtil"+CHR$0 70.syntax_string 71EQUS "==> Help on utility "+CHR$27+CHR$0+CHR$13 72.command_help 73EQUS "Reads"+CHR$27+CHR$16+"alters"+CHR$27+CHR$2+"machine's memory allocations."+CHR$13 74.syntax_mess 75EQUS CHR$27+CHR$30+"-help] [-display] [-interactive] [[-system] [+|-|=]<n>] [[-RMA] [+|-|=]<n>] [[-screen] [+|-|=]<n>] [[-"+CHR$27+CHR$31+"] [+|-|=]<n>] [[-font] [+|-|=]<n>] [[-RAMFS] [+|-|=]<n>]"+CHR$13+CHR$0 76.interactive 77SWI "OS_WriteS" 78EQUS "Type number of area to change or press ESCAPE to quit."+CHR$13+CHR$10+">> "+CHR$0 79ORR R0,R12,#1<<31 80MOV R1,#128 81MOV R2,#ASC"0" 82MOV R3,#ASC"9" 83SWI "XOS_ReadLine" 84BVS error 85MOVCS PC,R14 86CMP R1,#0 87MOVEQ PC,R14 88MOV R0,#0 89STRB R0,[R12,R1] 90; base 10 implied because R0 is invalid 91MOV R1,R12 92SWI "XOS_ReadUnsigned" 93BVS error 94MOV R9,R2 95SWI "XOS_WriteS" 96EQUS "�+n�, �-n�, �=n�: to alter the size, �n� to ensure free space (in KB)"+CHR$13+CHR$10+">> "+CHR$0 97ORR R0,R12,#1<<31 98MOV R1,#128 99MOV R2,#ASC"&" 100MOV R3,#ASC"_" 101SWI "XOS_ReadLine" 102BVS error 103MOVCS PC,R14 104CMP R1,#0 105MOVEQ PC,R14 106MOV R0,#0 107STRB R0,[R12,R1] 108MOV R0,R12 109.change 110MOV R10,R0 111.change_nextchar 112LDRB R8,[R10],#1 113TEQ R8,#32 114BEQ change_nextchar 115SUB R10,R10,#1 116MOV R7,#0 117MOV R1,R10 118MOV R0,#10 OR (1<<31) 119SWI "XOS_ReadUnsigned" 120BVC change_ok 121TEQ R8,#ASC"+" 122TEQNE R8,#ASC"-" 123TEQNE R8,#ASC"=" 124MOVEQ R7,R8 125ADD R1,R10,#1 126MOV R0,#10 OR (1<<31) 127SWI "XOS_ReadUnsigned" 128BVS error 129.change_ok 130MOV R6,R2,LSL #10 131TEQ R7,#0 132MOVEQ R1,#&80000000 133MOVEQ R0,R9 134SWIEQ "XOS_ChangeDynamicArea" 135TEQP PC,#0 136MOVEQ R7,#ASC"+" 137TEQ R7,#ASC"=" 138MOVEQ R0,R9 139SWIEQ "XOS_ReadDynamicArea" 140BVS error 141SUBEQ R6,R6,R1 142MOVEQ R7,#ASC"+" 143TEQ R7,#ASC"-" 144RSBEQ R6,R6,#0 145MOV R0,R9 146MOV R1,R6 147SWI "XOS_ChangeDynamicArea" 148MOV PC,R14 149.showinfo 150STMFD R13!,{R14} 151ADR R0,progname 152SWI "XOS_Write0" 153SWI "XOS_NewLine" 154SWI "XOS_NewLine" 155ADR R0,info_headings 156MOV R1,#0 157MOV R2,#0 158SWI "XOS_PrettyPrint" 159BVS error 160MOV R6,#0 ; number of area 161.infoloop 162BL info_display 163ADD R6,R6,#1 164CMP R6,#5 165BLS infoloop 166SWI "XOS_NewLine" 167SWI "XOS_GetEnv" 168BVS error 169SUB R0,R1,#&8000 170MOV R1,R12 171MOV R2,#512 172SWI "XOS_ConvertFixedFileSize" 173BVS error 174SWI "XOS_Write0" 175SWI "XOS_WriteS" 176EQUS " available for next application."+CHR$13+CHR$10+CHR$0 177ALIGN 178SWI "XOS_ReadMemMapInfo" 179STR R0,[R12,#0] 180STR R1,[R12,#4] 181BVS error 182MUL R2,R1,R0 183MOV R0,R2 184ADD R1,R12,#8 185MOV R2,#512-8 186SWI "XOS_ConvertFixedFileSize" 187BVS error 188SWI "XOS_Write0" 189SWI "XOS_WriteS" 190EQUS " total memory in this machine, in "+CHR$0 191ALIGN 192LDR R0,[R12,#4] 193SWI "XOS_ConvertCardinal4" 194BVS error 195SWI "XOS_Write0" 196SWI "XOS_WriteS" 197EQUS " pages of "+CHR$0 198LDR R0,[R12,#0] 199SWI "XOS_ConvertFileSize" 200BVS error 201SWI "XOS_Write0" 202SWI "XOS_WriteS" 203EQUS "."+CHR$13+CHR$10+CHR$10+CHR$0 204ALIGN 205LDMFD R13!,{PC} 206.info_display 207MOV R0,R6 ; takes area number in R6 208ORR R0,R0,#1<<7 209SWI "XOS_ReadDynamicArea" 210BVS error 211ADR R5,table-256 212ADD R5,R5,#256 213ADD R5,R5,R6,LSL #4 214STR R1,[R5,#0] 215STR R2,[R5,#4] 216MOV R0,R6 217MOV R1,R12 218MOV R2,#512 219SWI "XOS_ConvertCardinal1" 220BVS error 221MOV R3,#9 222STRB R3,[R1],#1 223MOV R3,#27 224STRB R3,[R1],#1 225ADD R0,R6,#1 226STRB R0,[R1],#1 227MOV R0,#0 228STRB R0,[R1],#1 229MOV R0,R12 230ADR R1,info_names-256 231ADD R1,R1,#256 232LDR R2,[R5,#8] 233SWI "XOS_PrettyPrint" 234MOV R1,R12 235MOV R2,#512-4 236LDR R0,[R5,#0] 237SWI "XOS_ConvertFixedFileSize" 238BVS error 239SUB R1,R1,#6 240LDRB R3,[R1] 241STRB R3,[R1,#-1] 242MOV R3,#32 243STRB R3,[R1],#1 244STRB R3,[R1],#1 245STRB R3,[R1],#1 246STRB R3,[R1],#1 247LDR R0,[R5,#4] 248SWI "XOS_ConvertFixedFileSize" 249BVS error 250SUB R1,R1,#6 251LDRB R3,[R1] 252STRB R3,[R1,#-1] 253MOV R3,#0 254STRB R3,[R1],#1 255LDR R0,[R5,#12] 256CMP R0,#0 257BEQ info_continue 258STMFD R13!,{R14} 259ADR R14,info_freecont 260ADR R8,start+512 261SUB R8,R8,#512 262ADD PC,R8,R0 263.info_freecont 264SUB R1,R1,#1 265MOV R3,#32 266STRB R3,[R1],#1 267STRB R3,[R1],#1 268SWI "XOS_ConvertFixedFileSize" 269BVS error 270LDMFD R13!,{R14} 271.info_continue 272MOV R0,R12 273SWI "XOS_Write0" 274SWI "XOS_NewLine" 275BVS error 276MOV PC,R14 277.table 278DCD 0 :DCD 0 :DCD 0 :DCD 0 279DCD 0 :DCD 0 :DCD 0 :DCD rma_free 280DCD 0 :DCD 0 :DCD 0 :DCD screen_free 281DCD 0 :DCD 0 :DCD 0 :DCD sprite_free 282DCD 0 :DCD 0 :DCD 0 :DCD font_free 283DCD 0 :DCD 0 :DCD 0 :DCD -ramfs_free*(osver%>2) 284.info_names 285FNname("System heap") 286FNname("Relocatable Module Area") 287FNname("Screen area") 288FNname("Sprite area") 289FNname("Font cache") 290FNname("RAM filing system") 291DCD 0 292.error 293ALIGN 294OPT pass 295LDR PC,retaddr 296.retaddr 297EQUD 0 298.info_headings 299EQUS "Dynamic area"+CHR$9+CHR$9+CHR$9+CHR$9+"size"+CHR$9+CHR$31+CHR$31+"max"+CHR$9+CHR$31+CHR$31+CHR$31+CHR$31+CHR$31+CHR$31+"free"+CHR$13+CHR$13+CHR$0 300.debug 301EQUS "Debug"+CHR$0 302ALIGN 303.value 304EQUD 0 305.font_free 306STMFD R13!,{R2-R3} 307SWI "XFont_CacheAddr" 308BVS error 309SUB R0,R2,R3 310LDMFD R13!,{R2-R3} 311MOV PC,R14 312.rma_free 313STMFD R13!,{R2-R3} 314MOV R0,#5 315SWI "XOS_Module" 316BVS error 317MOV R0,R2 318LDMFD R13!,{R2-R3} 319MOV PC,R14 320.sprite_free 321STMFD R13!,{R2-R5} 322MOV R0,#8 323SWI "XOS_SpriteOp" 324MOVVS R2,R5 325SUB R0,R2,R5 326LDMFD R13!,{R2-R5} 327MOV PC,R14 328.screen_free 329STMFD R13!,{R1-R2} 330MOV R0,#1 331MVN R1,#0 332BIC R1,R1,#1<<31 333SWI "XOS_ClaimScreenMemory" 334BVS error 335MOVCC R0,#0 336SWICC "XOS_ClaimScreenMemory" 337BVS error 338MOV R0,R1 339LDMFD R13!,{R1-R2} 340MOV PC,R14 341.ramfs_free 342STMFD R13!,{R1-R2} 343MOV R0,#49 344ADR R1,ramfs_object 345SWI "XOS_FSControl" 346MOVVS R0,#0 347LDMFD R13!,{R1-R2} 348MOV PC,R14 349.ramfs_object 350EQUS "RAM:$"+CHR$0 351.default 352EQUS "-h-d-i"+CHR$0 353] 354ENDPROC
� >MemSource � � Andrew Bower 1994 : save$="MemUtil" *FX1,3 &*RMEnsure UtilityModule 3.00 FX1,2 ș "OS_Byte",1 � ,osver% : � code 20480 L%=code+20460 � pass=%1100 � %1110 � %10 O%=code P%=0 �code � pass 'ș "OS_File",10,save$,&FFC,,code,O% � : 6� �name(s$) :� used for the table entries n=(32-�(s$))�8 m=(32-�(s$))�8 � m � n+=1 [OPT pass DCB �(s$)+n+2 )EQUS s$+�n,�9)+�0 :� to tabulate it ] =�(s$) : � �code [OPT pass .start STR R14,retaddr !BLDRB R0,[R1]:CMP R0,#0:ADREQ R1,default-2048:ADDEQ R1,R1,#2048 "BL readargs #-LDR R0,[R11,#1<<2]:TEQ R0,#0: BLNE syntax $:LDR R0,[R11,#3<<2]:TEQ R0,#0: MOVNE R9,#0: BLNE change %:LDR R0,[R11,#4<<2]:TEQ R0,#0: MOVNE R9,#1: BLNE change &:LDR R0,[R11,#5<<2]:TEQ R0,#0: MOVNE R9,#2: BLNE change ':LDR R0,[R11,#6<<2]:TEQ R0,#0: MOVNE R9,#3: BLNE change (:LDR R0,[R11,#7<<2]:TEQ R0,#0: MOVNE R9,#4: BLNE change ):LDR R0,[R11,#8<<2]:TEQ R0,#0: MOVNE R9,#5: BLNE change */LDR R0,[R11,#0<<2]:TEQ R0,#0: BLNE showinfo +2LDR R0,[R11,#2<<2]:TEQ R0,#0: BLNE interactive ,LDR PC,retaddr -: .EQUS "�A.Bower" / ALIGN 0: 1 .readargs 2ADR R0,keyword 3ADD R11,R12,#512 4MOV R2,R11 5MOV R3,#256 6SWI "XOS_ReadArgs" 7 BVS error 8MOV PC,R14 9.keyword :)EQUS"display/s,help/s,interactive/s," ;-EQUS"system,rma,screen,sprite,font,ramfs" < EQUB 0 =.syntax >ADR R0,syntax_string ? MOV R1,#0 @ADR R2,progname ASWI "XOS_PrettyPrint" B BVS error CMOV PC,R14 D .progname EEQUS "MemUtil"+�0 F.syntax_string G*EQUS "==> Help on utility "+�27+�0+�13 H.command_help ILEQUS "Reads"+�27+�16+"alters"+�27+�2+"machine's memory allocations."+�13 J.syntax_mess K�EQUS �27+�30+"-help] [-display] [-interactive] [[-system] [+|-|=]<n>] [[-RMA] [+|-|=]<n>] [[-screen] [+|-|=]<n>] [[-"+�27+�31+"] [+|-|=]<n>] [[-font] [+|-|=]<n>] [[-RAMFS] [+|-|=]<n>]"+�13+�0 L.interactive MSWI "OS_WriteS" NREQUS "Type number of area to change or press ESCAPE to quit."+�13+�10+">> "+�0 O�R R0,R12,#1<<31 PMOV R1,#128 QMOV R2,#�"0" RMOV R3,#�"9" SSWI "XOS_ReadLine" T BVS error UMOVCS PC,R14 V CMP R1,#0 W �Q PC,R14 X MOV R0,#0 YSTRB R0,[R12,R1] Z+; base 10 implied because R0 is invalid [MOV R1,R12 \SWI "XOS_ReadUnsigned" ] BVS error ^ MOV R9,R2 _SWI "XOS_WriteS" `cEQUS "�+n�, �-n�, �=n�: to alter the size, �n� to ensure free space (in KB)"+�13+�10+">> "+�0 a�R R0,R12,#1<<31 bMOV R1,#128 cMOV R2,#�"&" dMOV R3,#�"_" eSWI "XOS_ReadLine" f BVS error gMOVCS PC,R14 h CMP R1,#0 i �Q PC,R14 j MOV R0,#0 kSTRB R0,[R12,R1] lMOV R0,R12 m.change nMOV R10,R0 o.change_nextchar pLDRB R8,[R10],#1 qTEQ R8,#32 rBEQ change_nextchar sSUB R10,R10,#1 t MOV R7,#0 uMOV R1,R10 vMOV R0,#10 � (1<<31) wSWI "XOS_ReadUnsigned" xBVC change_ok yTEQ R8,#�"+" zTEQNE R8,#�"-" {TEQNE R8,#�"=" |�Q R7,R8 }ADD R1,R10,#1 ~MOV R0,#10 � (1<<31) SWI "XOS_ReadUnsigned" � BVS error �.change_ok �MOV R6,R2,LSL #10 � TEQ R7,#0 ��Q R1,#&80000000 ��Q R0,R9 �!SWIEQ "XOS_ChangeDynamicArea" �TEQP PC,#0 ��Q R7,#�"+" �TEQ R7,#�"=" ��Q R0,R9 �SWIEQ "XOS_ReadDynamicArea" � BVS error �SUBEQ R6,R6,R1 ��Q R7,#�"+" �TEQ R7,#�"-" �RSBEQ R6,R6,#0 � MOV R0,R9 � MOV R1,R6 �SWI "XOS_ChangeDynamicArea" �MOV PC,R14 � .showinfo �STMFD R13!,{R14} �ADR R0,progname �SWI "XOS_Write0" �SWI "XOS_NewLine" �SWI "XOS_NewLine" �ADR R0,info_headings � MOV R1,#0 � MOV R2,#0 �SWI "XOS_PrettyPrint" � BVS error �*MOV R6,#0 ; number of area � .infoloop �BL info_display �ADD R6,R6,#1 � CMP R6,#5 �BLS infoloop �SWI "XOS_NewLine" �SWI "XOS_GetEnv" � BVS error �SUB R0,R1,#&8000 �MOV R1,R12 �MOV R2,#512 �"SWI "XOS_ConvertFixedFileSize" � BVS error �SWI "XOS_Write0" �SWI "XOS_WriteS" �6EQUS " available for next application."+�13+�10+�0 � ALIGN �SWI "XOS_ReadMemMapInfo" �STR R0,[R12,#0] �STR R1,[R12,#4] � BVS error �MUL R2,R1,R0 � MOV R0,R2 �ADD R1,R12,#8 �MOV R2,#512-8 �"SWI "XOS_ConvertFixedFileSize" � BVS error �SWI "XOS_Write0" �SWI "XOS_WriteS" �0EQUS " total memory in this machine, in "+�0 � ALIGN �LDR R0,[R12,#4] �SWI "XOS_ConvertCardinal4" � BVS error �SWI "XOS_Write0" �SWI "XOS_WriteS" �EQUS " pages of "+�0 �LDR R0,[R12,#0] �SWI "XOS_ConvertFileSize" � BVS error �SWI "XOS_Write0" �SWI "XOS_WriteS" �EQUS "."+�13+�10+�10+�0 � ALIGN �LDMFD R13!,{PC} �.info_display �3MOV R0,R6 ; takes area number in R6 ��R R0,R0,#1<<7 �SWI "XOS_ReadDynamicArea" � BVS error �ADR R5,table-256 �ADD R5,R5,#256 �ADD R5,R5,R6,LSL #4 �STR R1,[R5,#0] �STR R2,[R5,#4] � MOV R0,R6 �MOV R1,R12 �MOV R2,#512 �SWI "XOS_ConvertCardinal1" � BVS error � MOV R3,#9 �STRB R3,[R1],#1 �MOV R3,#27 �STRB R3,[R1],#1 �ADD R0,R6,#1 �STRB R0,[R1],#1 � MOV R0,#0 �STRB R0,[R1],#1 �MOV R0,R12 �ADR R1,info_names-256 �ADD R1,R1,#256 �LDR R2,[R5,#8] �SWI "XOS_PrettyPrint" �MOV R1,R12 �MOV R2,#512-4 �LDR R0,[R5,#0] �"SWI "XOS_ConvertFixedFileSize" � BVS error �SUB R1,R1,#6 �LDRB R3,[R1] �STRB R3,[R1,#-1] �MOV R3,#32 �STRB R3,[R1],#1 �STRB R3,[R1],#1 �STRB R3,[R1],#1 �STRB R3,[R1],#1 �LDR R0,[R5,#4] �"SWI "XOS_ConvertFixedFileSize" � BVS error �SUB R1,R1,#6 �LDRB R3,[R1] �STRB R3,[R1,#-1] � MOV R3,#0 �STRB R3,[R1],#1 �LDR R0,[R5,#12] CMP R0,#0 BEQ info_continue STMFD R13!,{R14} ADR R14,info_freecont ADR R8,start+512 SUB R8,R8,#512 ADD PC,R8,R0 .info_freecont SUB R1,R1,#1 MOV R3,#32 STRB R3,[R1],#1 STRB R3,[R1],#1 "SWI "XOS_ConvertFixedFileSize" BVS error LDMFD R13!,{R14} .info_continue MOV R0,R12 SWI "XOS_Write0" SWI "XOS_NewLine" BVS error MOV PC,R14 .table DCD 0 :DCD 0 :DCD 0 :DCD 0 %DCD 0 :DCD 0 :DCD 0 :DCD rma_free (DCD 0 :DCD 0 :DCD 0 :DCD screen_free (DCD 0 :DCD 0 :DCD 0 :DCD sprite_free &DCD 0 :DCD 0 :DCD 0 :DCD font_free 3DCD 0 :DCD 0 :DCD 0 :DCD -ramfs_free*(osver%>2) .info_names �name("System heap") $�name("Relocatable Module Area") �name("Screen area") �name("Sprite area") !�name("Font cache") "�name("RAM filing system") # DCD 0 $ .error % ALIGN &OPT pass 'LDR PC,retaddr (.retaddr ) EQUD 0 *.info_headings +hEQUS "Dynamic area"+�9+�9+�9+�9+"size"+�9+�31+�31+"max"+�9+�31+�31+�31+�31+�31+�31+"free"+�13+�13+�0 , .debug -EQUS "Debug"+�0 . ALIGN / .value 0 EQUD 0 1.font_free 2STMFD R13!,{R2-R3} 3SWI "XFont_CacheAddr" 4 BVS error 5SUB R0,R2,R3 6LDMFD R13!,{R2-R3} 7MOV PC,R14 8 .rma_free 9STMFD R13!,{R2-R3} : MOV R0,#5 ;SWI "XOS_Module" < BVS error = MOV R0,R2 >LDMFD R13!,{R2-R3} ?MOV PC,R14 @.sprite_free ASTMFD R13!,{R2-R5} B MOV R0,#8 CSWI "XOS_SpriteOp" DMOVVS R2,R5 ESUB R0,R2,R5 FLDMFD R13!,{R2-R5} GMOV PC,R14 H.screen_free ISTMFD R13!,{R1-R2} J MOV R0,#1 K MVN R1,#0 LBIC R1,R1,#1<<31 MSWI "XOS_ClaimScreenMemory" N BVS error OMOVCC R0,#0 P!SWICC "XOS_ClaimScreenMemory" Q BVS error R MOV R0,R1 SLDMFD R13!,{R1-R2} TMOV PC,R14 U.ramfs_free VSTMFD R13!,{R1-R2} WMOV R0,#49 XADR R1,ramfs_object YSWI "XOS_FSControl" ZMOVVS R0,#0 [LDMFD R13!,{R1-R2} \MOV PC,R14 ].ramfs_object ^EQUS "RAM:$"+�0 _.default `EQUS "-h-d-i"+�0 a] b� �
00000000 0d 00 01 10 f4 20 3e 4d 65 6d 53 6f 75 72 63 65 |..... >MemSource| 00000010 0d 00 02 19 f4 20 a9 20 41 6e 64 72 65 77 20 42 |..... . Andrew B| 00000020 6f 77 65 72 20 31 39 39 34 0d 00 03 05 3a 0d 00 |ower 1994....:..| 00000030 04 13 73 61 76 65 24 3d 22 4d 65 6d 55 74 69 6c |..save$="MemUtil| 00000040 22 0d 00 05 0a 2a 46 58 31 2c 33 0d 00 06 26 2a |"....*FX1,3...&*| 00000050 52 4d 45 6e 73 75 72 65 20 55 74 69 6c 69 74 79 |RMEnsure Utility| 00000060 4d 6f 64 75 6c 65 20 33 2e 30 30 20 46 58 31 2c |Module 3.00 FX1,| 00000070 32 0d 00 07 1c c8 99 20 22 4f 53 5f 42 79 74 65 |2...... "OS_Byte| 00000080 22 2c 31 20 b8 20 2c 6f 73 76 65 72 25 0d 00 08 |",1 . ,osver%...| 00000090 05 3a 0d 00 09 10 de 20 63 6f 64 65 20 32 30 34 |.:..... code 204| 000000a0 38 30 0d 00 0a 11 4c 25 3d 63 6f 64 65 2b 32 30 |80....L%=code+20| 000000b0 34 36 30 0d 00 0b 1e e3 20 70 61 73 73 3d 25 31 |460..... pass=%1| 000000c0 31 30 30 20 b8 20 25 31 31 31 30 20 88 20 25 31 |100 . %1110 . %1| 000000d0 30 0d 00 0c 0b 4f 25 3d 63 6f 64 65 0d 00 0d 08 |0....O%=code....| 000000e0 50 25 3d 30 0d 00 0e 09 f2 63 6f 64 65 0d 00 0f |P%=0.....code...| 000000f0 0a ed 20 70 61 73 73 0d 00 10 27 c8 99 20 22 4f |.. pass...'.. "O| 00000100 53 5f 46 69 6c 65 22 2c 31 30 2c 73 61 76 65 24 |S_File",10,save$| 00000110 2c 26 46 46 43 2c 2c 63 6f 64 65 2c 4f 25 0d 00 |,&FFC,,code,O%..| 00000120 11 05 e0 0d 00 12 05 3a 0d 00 13 36 dd 20 a4 6e |.......:...6. .n| 00000130 61 6d 65 28 73 24 29 20 20 20 20 20 20 20 20 20 |ame(s$) | 00000140 20 3a f4 20 75 73 65 64 20 66 6f 72 20 74 68 65 | :. used for the| 00000150 20 74 61 62 6c 65 20 65 6e 74 72 69 65 73 0d 00 | table entries..| 00000160 14 12 6e 3d 28 33 32 2d a9 28 73 24 29 29 81 38 |..n=(32-.(s$)).8| 00000170 0d 00 15 12 6d 3d 28 33 32 2d a9 28 73 24 29 29 |....m=(32-.(s$))| 00000180 83 38 0d 00 16 0e e7 20 6d 20 8c 20 6e 2b 3d 31 |.8..... m . n+=1| 00000190 0d 00 17 0d 5b 4f 50 54 20 70 61 73 73 0d 00 18 |....[OPT pass...| 000001a0 11 44 43 42 20 a9 28 73 24 29 2b 6e 2b 32 0d 00 |.DCB .(s$)+n+2..| 000001b0 19 29 45 51 55 53 20 73 24 2b c4 6e 2c bd 39 29 |.)EQUS s$+.n,.9)| 000001c0 2b bd 30 20 20 20 3a f4 20 74 6f 20 74 61 62 75 |+.0 :. to tabu| 000001d0 6c 61 74 65 20 69 74 0d 00 1a 05 5d 0d 00 1b 0a |late it....]....| 000001e0 3d a9 28 73 24 29 0d 00 1c 05 3a 0d 00 1d 0b dd |=.(s$)....:.....| 000001f0 20 f2 63 6f 64 65 0d 00 1e 0d 5b 4f 50 54 20 70 | .code....[OPT p| 00000200 61 73 73 0d 00 1f 0a 2e 73 74 61 72 74 0d 00 20 |ass.....start.. | 00000210 13 53 54 52 20 52 31 34 2c 72 65 74 61 64 64 72 |.STR R14,retaddr| 00000220 0d 00 21 42 4c 44 52 42 20 52 30 2c 5b 52 31 5d |..!BLDRB R0,[R1]| 00000230 3a 43 4d 50 20 52 30 2c 23 30 3a 41 44 52 45 51 |:CMP R0,#0:ADREQ| 00000240 20 52 31 2c 64 65 66 61 75 6c 74 2d 32 30 34 38 | R1,default-2048| 00000250 3a 41 44 44 45 51 20 52 31 2c 52 31 2c 23 32 30 |:ADDEQ R1,R1,#20| 00000260 34 38 0d 00 22 0f 42 4c 20 72 65 61 64 61 72 67 |48..".BL readarg| 00000270 73 0d 00 23 2d 4c 44 52 20 52 30 2c 5b 52 31 31 |s..#-LDR R0,[R11| 00000280 2c 23 31 3c 3c 32 5d 3a 54 45 51 20 52 30 2c 23 |,#1<<2]:TEQ R0,#| 00000290 30 3a 20 42 4c 4e 45 20 73 79 6e 74 61 78 0d 00 |0: BLNE syntax..| 000002a0 24 3a 4c 44 52 20 52 30 2c 5b 52 31 31 2c 23 33 |$:LDR R0,[R11,#3| 000002b0 3c 3c 32 5d 3a 54 45 51 20 52 30 2c 23 30 3a 20 |<<2]:TEQ R0,#0: | 000002c0 4d 4f 56 4e 45 20 52 39 2c 23 30 3a 20 42 4c 4e |MOVNE R9,#0: BLN| 000002d0 45 20 63 68 61 6e 67 65 0d 00 25 3a 4c 44 52 20 |E change..%:LDR | 000002e0 52 30 2c 5b 52 31 31 2c 23 34 3c 3c 32 5d 3a 54 |R0,[R11,#4<<2]:T| 000002f0 45 51 20 52 30 2c 23 30 3a 20 4d 4f 56 4e 45 20 |EQ R0,#0: MOVNE | 00000300 52 39 2c 23 31 3a 20 42 4c 4e 45 20 63 68 61 6e |R9,#1: BLNE chan| 00000310 67 65 0d 00 26 3a 4c 44 52 20 52 30 2c 5b 52 31 |ge..&:LDR R0,[R1| 00000320 31 2c 23 35 3c 3c 32 5d 3a 54 45 51 20 52 30 2c |1,#5<<2]:TEQ R0,| 00000330 23 30 3a 20 4d 4f 56 4e 45 20 52 39 2c 23 32 3a |#0: MOVNE R9,#2:| 00000340 20 42 4c 4e 45 20 63 68 61 6e 67 65 0d 00 27 3a | BLNE change..':| 00000350 4c 44 52 20 52 30 2c 5b 52 31 31 2c 23 36 3c 3c |LDR R0,[R11,#6<<| 00000360 32 5d 3a 54 45 51 20 52 30 2c 23 30 3a 20 4d 4f |2]:TEQ R0,#0: MO| 00000370 56 4e 45 20 52 39 2c 23 33 3a 20 42 4c 4e 45 20 |VNE R9,#3: BLNE | 00000380 63 68 61 6e 67 65 0d 00 28 3a 4c 44 52 20 52 30 |change..(:LDR R0| 00000390 2c 5b 52 31 31 2c 23 37 3c 3c 32 5d 3a 54 45 51 |,[R11,#7<<2]:TEQ| 000003a0 20 52 30 2c 23 30 3a 20 4d 4f 56 4e 45 20 52 39 | R0,#0: MOVNE R9| 000003b0 2c 23 34 3a 20 42 4c 4e 45 20 63 68 61 6e 67 65 |,#4: BLNE change| 000003c0 0d 00 29 3a 4c 44 52 20 52 30 2c 5b 52 31 31 2c |..):LDR R0,[R11,| 000003d0 23 38 3c 3c 32 5d 3a 54 45 51 20 52 30 2c 23 30 |#8<<2]:TEQ R0,#0| 000003e0 3a 20 4d 4f 56 4e 45 20 52 39 2c 23 35 3a 20 42 |: MOVNE R9,#5: B| 000003f0 4c 4e 45 20 63 68 61 6e 67 65 0d 00 2a 2f 4c 44 |LNE change..*/LD| 00000400 52 20 52 30 2c 5b 52 31 31 2c 23 30 3c 3c 32 5d |R R0,[R11,#0<<2]| 00000410 3a 54 45 51 20 52 30 2c 23 30 3a 20 42 4c 4e 45 |:TEQ R0,#0: BLNE| 00000420 20 73 68 6f 77 69 6e 66 6f 0d 00 2b 32 4c 44 52 | showinfo..+2LDR| 00000430 20 52 30 2c 5b 52 31 31 2c 23 32 3c 3c 32 5d 3a | R0,[R11,#2<<2]:| 00000440 54 45 51 20 52 30 2c 23 30 3a 20 42 4c 4e 45 20 |TEQ R0,#0: BLNE | 00000450 69 6e 74 65 72 61 63 74 69 76 65 0d 00 2c 12 4c |interactive..,.L| 00000460 44 52 20 50 43 2c 72 65 74 61 64 64 72 0d 00 2d |DR PC,retaddr..-| 00000470 05 3a 0d 00 2e 13 45 51 55 53 20 22 a9 41 2e 42 |.:....EQUS ".A.B| 00000480 6f 77 65 72 22 0d 00 2f 09 41 4c 49 47 4e 0d 00 |ower"../.ALIGN..| 00000490 30 05 3a 0d 00 31 0d 2e 72 65 61 64 61 72 67 73 |0.:..1..readargs| 000004a0 0d 00 32 12 41 44 52 20 52 30 2c 6b 65 79 77 6f |..2.ADR R0,keywo| 000004b0 72 64 0d 00 33 14 41 44 44 20 52 31 31 2c 52 31 |rd..3.ADD R11,R1| 000004c0 32 2c 23 35 31 32 0d 00 34 0e 4d 4f 56 20 52 32 |2,#512..4.MOV R2| 000004d0 2c 52 31 31 0d 00 35 0f 4d 4f 56 20 52 33 2c 23 |,R11..5.MOV R3,#| 000004e0 32 35 36 0d 00 36 16 53 57 49 20 22 58 4f 53 5f |256..6.SWI "XOS_| 000004f0 52 65 61 64 41 72 67 73 22 0d 00 37 0d 42 56 53 |ReadArgs"..7.BVS| 00000500 20 65 72 72 6f 72 0d 00 38 0e 4d 4f 56 20 50 43 | error..8.MOV PC| 00000510 2c 52 31 34 0d 00 39 0c 2e 6b 65 79 77 6f 72 64 |,R14..9..keyword| 00000520 0d 00 3a 29 45 51 55 53 22 64 69 73 70 6c 61 79 |..:)EQUS"display| 00000530 2f 73 2c 68 65 6c 70 2f 73 2c 69 6e 74 65 72 61 |/s,help/s,intera| 00000540 63 74 69 76 65 2f 73 2c 22 0d 00 3b 2d 45 51 55 |ctive/s,"..;-EQU| 00000550 53 22 73 79 73 74 65 6d 2c 72 6d 61 2c 73 63 72 |S"system,rma,scr| 00000560 65 65 6e 2c 73 70 72 69 74 65 2c 66 6f 6e 74 2c |een,sprite,font,| 00000570 72 61 6d 66 73 22 0d 00 3c 0a 45 51 55 42 20 30 |ramfs"..<.EQUB 0| 00000580 0d 00 3d 0b 2e 73 79 6e 74 61 78 0d 00 3e 18 41 |..=..syntax..>.A| 00000590 44 52 20 52 30 2c 73 79 6e 74 61 78 5f 73 74 72 |DR R0,syntax_str| 000005a0 69 6e 67 0d 00 3f 0d 4d 4f 56 20 52 31 2c 23 30 |ing..?.MOV R1,#0| 000005b0 0d 00 40 13 41 44 52 20 52 32 2c 70 72 6f 67 6e |..@.ADR R2,progn| 000005c0 61 6d 65 0d 00 41 19 53 57 49 20 22 58 4f 53 5f |ame..A.SWI "XOS_| 000005d0 50 72 65 74 74 79 50 72 69 6e 74 22 0d 00 42 0d |PrettyPrint"..B.| 000005e0 42 56 53 20 65 72 72 6f 72 0d 00 43 0e 4d 4f 56 |BVS error..C.MOV| 000005f0 20 50 43 2c 52 31 34 0d 00 44 0d 2e 70 72 6f 67 | PC,R14..D..prog| 00000600 6e 61 6d 65 0d 00 45 15 45 51 55 53 20 22 4d 65 |name..E.EQUS "Me| 00000610 6d 55 74 69 6c 22 2b bd 30 0d 00 46 12 2e 73 79 |mUtil"+.0..F..sy| 00000620 6e 74 61 78 5f 73 74 72 69 6e 67 0d 00 47 2a 45 |ntax_string..G*E| 00000630 51 55 53 20 22 3d 3d 3e 20 48 65 6c 70 20 6f 6e |QUS "==> Help on| 00000640 20 75 74 69 6c 69 74 79 20 22 2b bd 32 37 2b bd | utility "+.27+.| 00000650 30 2b bd 31 33 0d 00 48 11 2e 63 6f 6d 6d 61 6e |0+.13..H..comman| 00000660 64 5f 68 65 6c 70 0d 00 49 4c 45 51 55 53 20 22 |d_help..ILEQUS "| 00000670 52 65 61 64 73 22 2b bd 32 37 2b bd 31 36 2b 22 |Reads"+.27+.16+"| 00000680 61 6c 74 65 72 73 22 2b bd 32 37 2b bd 32 2b 22 |alters"+.27+.2+"| 00000690 6d 61 63 68 69 6e 65 27 73 20 6d 65 6d 6f 72 79 |machine's memory| 000006a0 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 2e 22 2b bd | allocations."+.| 000006b0 31 33 0d 00 4a 10 2e 73 79 6e 74 61 78 5f 6d 65 |13..J..syntax_me| 000006c0 73 73 0d 00 4b c3 45 51 55 53 20 bd 32 37 2b bd |ss..K.EQUS .27+.| 000006d0 33 30 2b 22 2d 68 65 6c 70 5d 20 5b 2d 64 69 73 |30+"-help] [-dis| 000006e0 70 6c 61 79 5d 20 5b 2d 69 6e 74 65 72 61 63 74 |play] [-interact| 000006f0 69 76 65 5d 20 5b 5b 2d 73 79 73 74 65 6d 5d 20 |ive] [[-system] | 00000700 5b 2b 7c 2d 7c 3d 5d 3c 6e 3e 5d 20 5b 5b 2d 52 |[+|-|=]<n>] [[-R| 00000710 4d 41 5d 20 5b 2b 7c 2d 7c 3d 5d 3c 6e 3e 5d 20 |MA] [+|-|=]<n>] | 00000720 5b 5b 2d 73 63 72 65 65 6e 5d 20 5b 2b 7c 2d 7c |[[-screen] [+|-|| 00000730 3d 5d 3c 6e 3e 5d 20 5b 5b 2d 22 2b bd 32 37 2b |=]<n>] [[-"+.27+| 00000740 bd 33 31 2b 22 5d 20 5b 2b 7c 2d 7c 3d 5d 3c 6e |.31+"] [+|-|=]<n| 00000750 3e 5d 20 5b 5b 2d 66 6f 6e 74 5d 20 5b 2b 7c 2d |>] [[-font] [+|-| 00000760 7c 3d 5d 3c 6e 3e 5d 20 5b 5b 2d 52 41 4d 46 53 ||=]<n>] [[-RAMFS| 00000770 5d 20 5b 2b 7c 2d 7c 3d 5d 3c 6e 3e 5d 22 2b bd |] [+|-|=]<n>]"+.| 00000780 31 33 2b bd 30 0d 00 4c 10 2e 69 6e 74 65 72 61 |13+.0..L..intera| 00000790 63 74 69 76 65 0d 00 4d 13 53 57 49 20 22 4f 53 |ctive..M.SWI "OS| 000007a0 5f 57 72 69 74 65 53 22 0d 00 4e 52 45 51 55 53 |_WriteS"..NREQUS| 000007b0 20 22 54 79 70 65 20 6e 75 6d 62 65 72 20 6f 66 | "Type number of| 000007c0 20 61 72 65 61 20 74 6f 20 63 68 61 6e 67 65 20 | area to change | 000007d0 6f 72 20 70 72 65 73 73 20 45 53 43 41 50 45 20 |or press ESCAPE | 000007e0 74 6f 20 71 75 69 74 2e 22 2b bd 31 33 2b bd 31 |to quit."+.13+.1| 000007f0 30 2b 22 3e 3e 20 22 2b bd 30 0d 00 4f 14 84 52 |0+">> "+.0..O..R| 00000800 20 52 30 2c 52 31 32 2c 23 31 3c 3c 33 31 0d 00 | R0,R12,#1<<31..| 00000810 50 0f 4d 4f 56 20 52 31 2c 23 31 32 38 0d 00 51 |P.MOV R1,#128..Q| 00000820 10 4d 4f 56 20 52 32 2c 23 97 22 30 22 0d 00 52 |.MOV R2,#."0"..R| 00000830 10 4d 4f 56 20 52 33 2c 23 97 22 39 22 0d 00 53 |.MOV R3,#."9"..S| 00000840 16 53 57 49 20 22 58 4f 53 5f 52 65 61 64 4c 69 |.SWI "XOS_ReadLi| 00000850 6e 65 22 0d 00 54 0d 42 56 53 20 65 72 72 6f 72 |ne"..T.BVS error| 00000860 0d 00 55 10 4d 4f 56 43 53 20 50 43 2c 52 31 34 |..U.MOVCS PC,R14| 00000870 0d 00 56 0d 43 4d 50 20 52 31 2c 23 30 0d 00 57 |..V.CMP R1,#0..W| 00000880 0d ec 51 20 50 43 2c 52 31 34 0d 00 58 0d 4d 4f |..Q PC,R14..X.MO| 00000890 56 20 52 30 2c 23 30 0d 00 59 14 53 54 52 42 20 |V R0,#0..Y.STRB | 000008a0 52 30 2c 5b 52 31 32 2c 52 31 5d 0d 00 5a 2b 3b |R0,[R12,R1]..Z+;| 000008b0 20 62 61 73 65 20 31 30 20 69 6d 70 6c 69 65 64 | base 10 implied| 000008c0 20 62 65 63 61 75 73 65 20 52 30 20 69 73 20 69 | because R0 is i| 000008d0 6e 76 61 6c 69 64 0d 00 5b 0e 4d 4f 56 20 52 31 |nvalid..[.MOV R1| 000008e0 2c 52 31 32 0d 00 5c 1a 53 57 49 20 22 58 4f 53 |,R12..\.SWI "XOS| 000008f0 5f 52 65 61 64 55 6e 73 69 67 6e 65 64 22 0d 00 |_ReadUnsigned"..| 00000900 5d 0d 42 56 53 20 65 72 72 6f 72 0d 00 5e 0d 4d |].BVS error..^.M| 00000910 4f 56 20 52 39 2c 52 32 0d 00 5f 14 53 57 49 20 |OV R9,R2.._.SWI | 00000920 22 58 4f 53 5f 57 72 69 74 65 53 22 0d 00 60 63 |"XOS_WriteS"..`c| 00000930 45 51 55 53 20 22 94 2b 6e 95 2c 20 94 2d 6e 95 |EQUS ".+n., .-n.| 00000940 2c 20 94 3d 6e 95 3a 20 74 6f 20 61 6c 74 65 72 |, .=n.: to alter| 00000950 20 74 68 65 20 73 69 7a 65 2c 20 20 20 94 6e 95 | the size, .n.| 00000960 20 74 6f 20 65 6e 73 75 72 65 20 66 72 65 65 20 | to ensure free | 00000970 73 70 61 63 65 20 28 69 6e 20 4b 42 29 22 2b bd |space (in KB)"+.| 00000980 31 33 2b bd 31 30 2b 22 3e 3e 20 22 2b bd 30 0d |13+.10+">> "+.0.| 00000990 00 61 14 84 52 20 52 30 2c 52 31 32 2c 23 31 3c |.a..R R0,R12,#1<| 000009a0 3c 33 31 0d 00 62 0f 4d 4f 56 20 52 31 2c 23 31 |<31..b.MOV R1,#1| 000009b0 32 38 0d 00 63 10 4d 4f 56 20 52 32 2c 23 97 22 |28..c.MOV R2,#."| 000009c0 26 22 0d 00 64 10 4d 4f 56 20 52 33 2c 23 97 22 |&"..d.MOV R3,#."| 000009d0 5f 22 0d 00 65 16 53 57 49 20 22 58 4f 53 5f 52 |_"..e.SWI "XOS_R| 000009e0 65 61 64 4c 69 6e 65 22 0d 00 66 0d 42 56 53 20 |eadLine"..f.BVS | 000009f0 65 72 72 6f 72 0d 00 67 10 4d 4f 56 43 53 20 50 |error..g.MOVCS P| 00000a00 43 2c 52 31 34 0d 00 68 0d 43 4d 50 20 52 31 2c |C,R14..h.CMP R1,| 00000a10 23 30 0d 00 69 0d ec 51 20 50 43 2c 52 31 34 0d |#0..i..Q PC,R14.| 00000a20 00 6a 0d 4d 4f 56 20 52 30 2c 23 30 0d 00 6b 14 |.j.MOV R0,#0..k.| 00000a30 53 54 52 42 20 52 30 2c 5b 52 31 32 2c 52 31 5d |STRB R0,[R12,R1]| 00000a40 0d 00 6c 0e 4d 4f 56 20 52 30 2c 52 31 32 0d 00 |..l.MOV R0,R12..| 00000a50 6d 0b 2e 63 68 61 6e 67 65 0d 00 6e 0e 4d 4f 56 |m..change..n.MOV| 00000a60 20 52 31 30 2c 52 30 0d 00 6f 14 2e 63 68 61 6e | R10,R0..o..chan| 00000a70 67 65 5f 6e 65 78 74 63 68 61 72 0d 00 70 14 4c |ge_nextchar..p.L| 00000a80 44 52 42 20 52 38 2c 5b 52 31 30 5d 2c 23 31 0d |DRB R8,[R10],#1.| 00000a90 00 71 0e 54 45 51 20 52 38 2c 23 33 32 0d 00 72 |.q.TEQ R8,#32..r| 00000aa0 17 42 45 51 20 63 68 61 6e 67 65 5f 6e 65 78 74 |.BEQ change_next| 00000ab0 63 68 61 72 0d 00 73 12 53 55 42 20 52 31 30 2c |char..s.SUB R10,| 00000ac0 52 31 30 2c 23 31 0d 00 74 0d 4d 4f 56 20 52 37 |R10,#1..t.MOV R7| 00000ad0 2c 23 30 0d 00 75 0e 4d 4f 56 20 52 31 2c 52 31 |,#0..u.MOV R1,R1| 00000ae0 30 0d 00 76 18 4d 4f 56 20 52 30 2c 23 31 30 20 |0..v.MOV R0,#10 | 00000af0 84 20 28 31 3c 3c 33 31 29 0d 00 77 1a 53 57 49 |. (1<<31)..w.SWI| 00000b00 20 22 58 4f 53 5f 52 65 61 64 55 6e 73 69 67 6e | "XOS_ReadUnsign| 00000b10 65 64 22 0d 00 78 11 42 56 43 20 63 68 61 6e 67 |ed"..x.BVC chang| 00000b20 65 5f 6f 6b 0d 00 79 10 54 45 51 20 52 38 2c 23 |e_ok..y.TEQ R8,#| 00000b30 97 22 2b 22 0d 00 7a 12 54 45 51 4e 45 20 52 38 |."+"..z.TEQNE R8| 00000b40 2c 23 97 22 2d 22 0d 00 7b 12 54 45 51 4e 45 20 |,#."-"..{.TEQNE | 00000b50 52 38 2c 23 97 22 3d 22 0d 00 7c 0c ec 51 20 52 |R8,#."="..|..Q R| 00000b60 37 2c 52 38 0d 00 7d 11 41 44 44 20 52 31 2c 52 |7,R8..}.ADD R1,R| 00000b70 31 30 2c 23 31 0d 00 7e 18 4d 4f 56 20 52 30 2c |10,#1..~.MOV R0,| 00000b80 23 31 30 20 84 20 28 31 3c 3c 33 31 29 0d 00 7f |#10 . (1<<31)...| 00000b90 1a 53 57 49 20 22 58 4f 53 5f 52 65 61 64 55 6e |.SWI "XOS_ReadUn| 00000ba0 73 69 67 6e 65 64 22 0d 00 80 0d 42 56 53 20 65 |signed"....BVS e| 00000bb0 72 72 6f 72 0d 00 81 0e 2e 63 68 61 6e 67 65 5f |rror.....change_| 00000bc0 6f 6b 0d 00 82 15 4d 4f 56 20 52 36 2c 52 32 2c |ok....MOV R6,R2,| 00000bd0 4c 53 4c 20 23 31 30 0d 00 83 0d 54 45 51 20 52 |LSL #10....TEQ R| 00000be0 37 2c 23 30 0d 00 84 14 ec 51 20 52 31 2c 23 26 |7,#0.....Q R1,#&| 00000bf0 38 30 30 30 30 30 30 30 0d 00 85 0c ec 51 20 52 |80000000.....Q R| 00000c00 30 2c 52 39 0d 00 86 21 53 57 49 45 51 20 22 58 |0,R9...!SWIEQ "X| 00000c10 4f 53 5f 43 68 61 6e 67 65 44 79 6e 61 6d 69 63 |OS_ChangeDynamic| 00000c20 41 72 65 61 22 0d 00 87 0e 54 45 51 50 20 50 43 |Area"....TEQP PC| 00000c30 2c 23 30 0d 00 88 0f ec 51 20 52 37 2c 23 97 22 |,#0.....Q R7,#."| 00000c40 2b 22 0d 00 89 10 54 45 51 20 52 37 2c 23 97 22 |+"....TEQ R7,#."| 00000c50 3d 22 0d 00 8a 0c ec 51 20 52 30 2c 52 39 0d 00 |=".....Q R0,R9..| 00000c60 8b 1f 53 57 49 45 51 20 22 58 4f 53 5f 52 65 61 |..SWIEQ "XOS_Rea| 00000c70 64 44 79 6e 61 6d 69 63 41 72 65 61 22 0d 00 8c |dDynamicArea"...| 00000c80 0d 42 56 53 20 65 72 72 6f 72 0d 00 8d 12 53 55 |.BVS error....SU| 00000c90 42 45 51 20 52 36 2c 52 36 2c 52 31 0d 00 8e 0f |BEQ R6,R6,R1....| 00000ca0 ec 51 20 52 37 2c 23 97 22 2b 22 0d 00 8f 10 54 |.Q R7,#."+"....T| 00000cb0 45 51 20 52 37 2c 23 97 22 2d 22 0d 00 90 12 52 |EQ R7,#."-"....R| 00000cc0 53 42 45 51 20 52 36 2c 52 36 2c 23 30 0d 00 91 |SBEQ R6,R6,#0...| 00000cd0 0d 4d 4f 56 20 52 30 2c 52 39 0d 00 92 0d 4d 4f |.MOV R0,R9....MO| 00000ce0 56 20 52 31 2c 52 36 0d 00 93 1f 53 57 49 20 22 |V R1,R6....SWI "| 00000cf0 58 4f 53 5f 43 68 61 6e 67 65 44 79 6e 61 6d 69 |XOS_ChangeDynami| 00000d00 63 41 72 65 61 22 0d 00 94 0e 4d 4f 56 20 50 43 |cArea"....MOV PC| 00000d10 2c 52 31 34 0d 00 95 0d 2e 73 68 6f 77 69 6e 66 |,R14.....showinf| 00000d20 6f 0d 00 96 14 53 54 4d 46 44 20 52 31 33 21 2c |o....STMFD R13!,| 00000d30 7b 52 31 34 7d 0d 00 97 13 41 44 52 20 52 30 2c |{R14}....ADR R0,| 00000d40 70 72 6f 67 6e 61 6d 65 0d 00 98 14 53 57 49 20 |progname....SWI | 00000d50 22 58 4f 53 5f 57 72 69 74 65 30 22 0d 00 99 15 |"XOS_Write0"....| 00000d60 53 57 49 20 22 58 4f 53 5f 4e 65 77 4c 69 6e 65 |SWI "XOS_NewLine| 00000d70 22 0d 00 9a 15 53 57 49 20 22 58 4f 53 5f 4e 65 |"....SWI "XOS_Ne| 00000d80 77 4c 69 6e 65 22 0d 00 9b 18 41 44 52 20 52 30 |wLine"....ADR R0| 00000d90 2c 69 6e 66 6f 5f 68 65 61 64 69 6e 67 73 0d 00 |,info_headings..| 00000da0 9c 0d 4d 4f 56 20 52 31 2c 23 30 0d 00 9d 0d 4d |..MOV R1,#0....M| 00000db0 4f 56 20 52 32 2c 23 30 0d 00 9e 19 53 57 49 20 |OV R2,#0....SWI | 00000dc0 22 58 4f 53 5f 50 72 65 74 74 79 50 72 69 6e 74 |"XOS_PrettyPrint| 00000dd0 22 0d 00 9f 0d 42 56 53 20 65 72 72 6f 72 0d 00 |"....BVS error..| 00000de0 a0 2a 4d 4f 56 20 52 36 2c 23 30 20 20 20 20 20 |.*MOV R6,#0 | 00000df0 20 20 20 20 20 20 20 20 3b 20 6e 75 6d 62 65 72 | ; number| 00000e00 20 6f 66 20 61 72 65 61 0d 00 a1 0d 2e 69 6e 66 | of area.....inf| 00000e10 6f 6c 6f 6f 70 0d 00 a2 13 42 4c 20 69 6e 66 6f |oloop....BL info| 00000e20 5f 64 69 73 70 6c 61 79 0d 00 a3 10 41 44 44 20 |_display....ADD | 00000e30 52 36 2c 52 36 2c 23 31 0d 00 a4 0d 43 4d 50 20 |R6,R6,#1....CMP | 00000e40 52 36 2c 23 35 0d 00 a5 10 42 4c 53 20 69 6e 66 |R6,#5....BLS inf| 00000e50 6f 6c 6f 6f 70 0d 00 a6 15 53 57 49 20 22 58 4f |oloop....SWI "XO| 00000e60 53 5f 4e 65 77 4c 69 6e 65 22 0d 00 a7 14 53 57 |S_NewLine"....SW| 00000e70 49 20 22 58 4f 53 5f 47 65 74 45 6e 76 22 0d 00 |I "XOS_GetEnv"..| 00000e80 a8 0d 42 56 53 20 65 72 72 6f 72 0d 00 a9 14 53 |..BVS error....S| 00000e90 55 42 20 52 30 2c 52 31 2c 23 26 38 30 30 30 0d |UB R0,R1,#&8000.| 00000ea0 00 aa 0e 4d 4f 56 20 52 31 2c 52 31 32 0d 00 ab |...MOV R1,R12...| 00000eb0 0f 4d 4f 56 20 52 32 2c 23 35 31 32 0d 00 ac 22 |.MOV R2,#512..."| 00000ec0 53 57 49 20 22 58 4f 53 5f 43 6f 6e 76 65 72 74 |SWI "XOS_Convert| 00000ed0 46 69 78 65 64 46 69 6c 65 53 69 7a 65 22 0d 00 |FixedFileSize"..| 00000ee0 ad 0d 42 56 53 20 65 72 72 6f 72 0d 00 ae 14 53 |..BVS error....S| 00000ef0 57 49 20 22 58 4f 53 5f 57 72 69 74 65 30 22 0d |WI "XOS_Write0".| 00000f00 00 af 14 53 57 49 20 22 58 4f 53 5f 57 72 69 74 |...SWI "XOS_Writ| 00000f10 65 53 22 0d 00 b0 36 45 51 55 53 20 22 20 61 76 |eS"...6EQUS " av| 00000f20 61 69 6c 61 62 6c 65 20 66 6f 72 20 6e 65 78 74 |ailable for next| 00000f30 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 22 2b bd | application."+.| 00000f40 31 33 2b bd 31 30 2b bd 30 0d 00 b1 09 41 4c 49 |13+.10+.0....ALI| 00000f50 47 4e 0d 00 b2 1c 53 57 49 20 22 58 4f 53 5f 52 |GN....SWI "XOS_R| 00000f60 65 61 64 4d 65 6d 4d 61 70 49 6e 66 6f 22 0d 00 |eadMemMapInfo"..| 00000f70 b3 13 53 54 52 20 52 30 2c 5b 52 31 32 2c 23 30 |..STR R0,[R12,#0| 00000f80 5d 0d 00 b4 13 53 54 52 20 52 31 2c 5b 52 31 32 |]....STR R1,[R12| 00000f90 2c 23 34 5d 0d 00 b5 0d 42 56 53 20 65 72 72 6f |,#4]....BVS erro| 00000fa0 72 0d 00 b6 10 4d 55 4c 20 52 32 2c 52 31 2c 52 |r....MUL R2,R1,R| 00000fb0 30 0d 00 b7 0d 4d 4f 56 20 52 30 2c 52 32 0d 00 |0....MOV R0,R2..| 00000fc0 b8 11 41 44 44 20 52 31 2c 52 31 32 2c 23 38 0d |..ADD R1,R12,#8.| 00000fd0 00 b9 11 4d 4f 56 20 52 32 2c 23 35 31 32 2d 38 |...MOV R2,#512-8| 00000fe0 0d 00 ba 22 53 57 49 20 22 58 4f 53 5f 43 6f 6e |..."SWI "XOS_Con| 00000ff0 76 65 72 74 46 69 78 65 64 46 69 6c 65 53 69 7a |vertFixedFileSiz| 00001000 65 22 0d 00 bb 0d 42 56 53 20 65 72 72 6f 72 0d |e"....BVS error.| 00001010 00 bc 14 53 57 49 20 22 58 4f 53 5f 57 72 69 74 |...SWI "XOS_Writ| 00001020 65 30 22 0d 00 bd 14 53 57 49 20 22 58 4f 53 5f |e0"....SWI "XOS_| 00001030 57 72 69 74 65 53 22 0d 00 be 30 45 51 55 53 20 |WriteS"...0EQUS | 00001040 22 20 74 6f 74 61 6c 20 6d 65 6d 6f 72 79 20 69 |" total memory i| 00001050 6e 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2c 20 |n this machine, | 00001060 69 6e 20 22 2b bd 30 0d 00 bf 09 41 4c 49 47 4e |in "+.0....ALIGN| 00001070 0d 00 c0 13 4c 44 52 20 52 30 2c 5b 52 31 32 2c |....LDR R0,[R12,| 00001080 23 34 5d 0d 00 c1 1e 53 57 49 20 22 58 4f 53 5f |#4]....SWI "XOS_| 00001090 43 6f 6e 76 65 72 74 43 61 72 64 69 6e 61 6c 34 |ConvertCardinal4| 000010a0 22 0d 00 c2 0d 42 56 53 20 65 72 72 6f 72 0d 00 |"....BVS error..| 000010b0 c3 14 53 57 49 20 22 58 4f 53 5f 57 72 69 74 65 |..SWI "XOS_Write| 000010c0 30 22 0d 00 c4 14 53 57 49 20 22 58 4f 53 5f 57 |0"....SWI "XOS_W| 000010d0 72 69 74 65 53 22 0d 00 c5 18 45 51 55 53 20 22 |riteS"....EQUS "| 000010e0 20 70 61 67 65 73 20 6f 66 20 22 2b bd 30 0d 00 | pages of "+.0..| 000010f0 c6 13 4c 44 52 20 52 30 2c 5b 52 31 32 2c 23 30 |..LDR R0,[R12,#0| 00001100 5d 0d 00 c7 1d 53 57 49 20 22 58 4f 53 5f 43 6f |]....SWI "XOS_Co| 00001110 6e 76 65 72 74 46 69 6c 65 53 69 7a 65 22 0d 00 |nvertFileSize"..| 00001120 c8 0d 42 56 53 20 65 72 72 6f 72 0d 00 c9 14 53 |..BVS error....S| 00001130 57 49 20 22 58 4f 53 5f 57 72 69 74 65 30 22 0d |WI "XOS_Write0".| 00001140 00 ca 14 53 57 49 20 22 58 4f 53 5f 57 72 69 74 |...SWI "XOS_Writ| 00001150 65 53 22 0d 00 cb 1b 45 51 55 53 20 22 2e 22 2b |eS"....EQUS "."+| 00001160 bd 31 33 2b bd 31 30 2b bd 31 30 2b bd 30 0d 00 |.13+.10+.10+.0..| 00001170 cc 09 41 4c 49 47 4e 0d 00 cd 13 4c 44 4d 46 44 |..ALIGN....LDMFD| 00001180 20 52 31 33 21 2c 7b 50 43 7d 0d 00 ce 11 2e 69 | R13!,{PC}.....i| 00001190 6e 66 6f 5f 64 69 73 70 6c 61 79 0d 00 cf 33 4d |nfo_display...3M| 000011a0 4f 56 20 52 30 2c 52 36 20 20 20 20 20 20 20 20 |OV R0,R6 | 000011b0 20 20 20 20 20 3b 20 74 61 6b 65 73 20 61 72 65 | ; takes are| 000011c0 61 20 6e 75 6d 62 65 72 20 69 6e 20 52 36 0d 00 |a number in R6..| 000011d0 d0 12 84 52 20 52 30 2c 52 30 2c 23 31 3c 3c 37 |...R R0,R0,#1<<7| 000011e0 0d 00 d1 1d 53 57 49 20 22 58 4f 53 5f 52 65 61 |....SWI "XOS_Rea| 000011f0 64 44 79 6e 61 6d 69 63 41 72 65 61 22 0d 00 d2 |dDynamicArea"...| 00001200 0d 42 56 53 20 65 72 72 6f 72 0d 00 d3 14 41 44 |.BVS error....AD| 00001210 52 20 52 35 2c 74 61 62 6c 65 2d 32 35 36 0d 00 |R R5,table-256..| 00001220 d4 12 41 44 44 20 52 35 2c 52 35 2c 23 32 35 36 |..ADD R5,R5,#256| 00001230 0d 00 d5 17 41 44 44 20 52 35 2c 52 35 2c 52 36 |....ADD R5,R5,R6| 00001240 2c 4c 53 4c 20 23 34 0d 00 d6 12 53 54 52 20 52 |,LSL #4....STR R| 00001250 31 2c 5b 52 35 2c 23 30 5d 0d 00 d7 12 53 54 52 |1,[R5,#0]....STR| 00001260 20 52 32 2c 5b 52 35 2c 23 34 5d 0d 00 d8 0d 4d | R2,[R5,#4]....M| 00001270 4f 56 20 52 30 2c 52 36 0d 00 d9 0e 4d 4f 56 20 |OV R0,R6....MOV | 00001280 52 31 2c 52 31 32 0d 00 da 0f 4d 4f 56 20 52 32 |R1,R12....MOV R2| 00001290 2c 23 35 31 32 0d 00 db 1e 53 57 49 20 22 58 4f |,#512....SWI "XO| 000012a0 53 5f 43 6f 6e 76 65 72 74 43 61 72 64 69 6e 61 |S_ConvertCardina| 000012b0 6c 31 22 0d 00 dc 0d 42 56 53 20 65 72 72 6f 72 |l1"....BVS error| 000012c0 0d 00 dd 0d 4d 4f 56 20 52 33 2c 23 39 0d 00 de |....MOV R3,#9...| 000012d0 13 53 54 52 42 20 52 33 2c 5b 52 31 5d 2c 23 31 |.STRB R3,[R1],#1| 000012e0 0d 00 df 0e 4d 4f 56 20 52 33 2c 23 32 37 0d 00 |....MOV R3,#27..| 000012f0 e0 13 53 54 52 42 20 52 33 2c 5b 52 31 5d 2c 23 |..STRB R3,[R1],#| 00001300 31 0d 00 e1 10 41 44 44 20 52 30 2c 52 36 2c 23 |1....ADD R0,R6,#| 00001310 31 0d 00 e2 13 53 54 52 42 20 52 30 2c 5b 52 31 |1....STRB R0,[R1| 00001320 5d 2c 23 31 0d 00 e3 0d 4d 4f 56 20 52 30 2c 23 |],#1....MOV R0,#| 00001330 30 0d 00 e4 13 53 54 52 42 20 52 30 2c 5b 52 31 |0....STRB R0,[R1| 00001340 5d 2c 23 31 0d 00 e5 0e 4d 4f 56 20 52 30 2c 52 |],#1....MOV R0,R| 00001350 31 32 0d 00 e6 19 41 44 52 20 52 31 2c 69 6e 66 |12....ADR R1,inf| 00001360 6f 5f 6e 61 6d 65 73 2d 32 35 36 0d 00 e7 12 41 |o_names-256....A| 00001370 44 44 20 52 31 2c 52 31 2c 23 32 35 36 0d 00 e8 |DD R1,R1,#256...| 00001380 12 4c 44 52 20 52 32 2c 5b 52 35 2c 23 38 5d 0d |.LDR R2,[R5,#8].| 00001390 00 e9 19 53 57 49 20 22 58 4f 53 5f 50 72 65 74 |...SWI "XOS_Pret| 000013a0 74 79 50 72 69 6e 74 22 0d 00 ea 0e 4d 4f 56 20 |tyPrint"....MOV | 000013b0 52 31 2c 52 31 32 0d 00 eb 11 4d 4f 56 20 52 32 |R1,R12....MOV R2| 000013c0 2c 23 35 31 32 2d 34 0d 00 ec 12 4c 44 52 20 52 |,#512-4....LDR R| 000013d0 30 2c 5b 52 35 2c 23 30 5d 0d 00 ed 22 53 57 49 |0,[R5,#0]..."SWI| 000013e0 20 22 58 4f 53 5f 43 6f 6e 76 65 72 74 46 69 78 | "XOS_ConvertFix| 000013f0 65 64 46 69 6c 65 53 69 7a 65 22 0d 00 ee 0d 42 |edFileSize"....B| 00001400 56 53 20 65 72 72 6f 72 0d 00 ef 10 53 55 42 20 |VS error....SUB | 00001410 52 31 2c 52 31 2c 23 36 0d 00 f0 10 4c 44 52 42 |R1,R1,#6....LDRB| 00001420 20 52 33 2c 5b 52 31 5d 0d 00 f1 14 53 54 52 42 | R3,[R1]....STRB| 00001430 20 52 33 2c 5b 52 31 2c 23 2d 31 5d 0d 00 f2 0e | R3,[R1,#-1]....| 00001440 4d 4f 56 20 52 33 2c 23 33 32 0d 00 f3 13 53 54 |MOV R3,#32....ST| 00001450 52 42 20 52 33 2c 5b 52 31 5d 2c 23 31 0d 00 f4 |RB R3,[R1],#1...| 00001460 13 53 54 52 42 20 52 33 2c 5b 52 31 5d 2c 23 31 |.STRB R3,[R1],#1| 00001470 0d 00 f5 13 53 54 52 42 20 52 33 2c 5b 52 31 5d |....STRB R3,[R1]| 00001480 2c 23 31 0d 00 f6 13 53 54 52 42 20 52 33 2c 5b |,#1....STRB R3,[| 00001490 52 31 5d 2c 23 31 0d 00 f7 12 4c 44 52 20 52 30 |R1],#1....LDR R0| 000014a0 2c 5b 52 35 2c 23 34 5d 0d 00 f8 22 53 57 49 20 |,[R5,#4]..."SWI | 000014b0 22 58 4f 53 5f 43 6f 6e 76 65 72 74 46 69 78 65 |"XOS_ConvertFixe| 000014c0 64 46 69 6c 65 53 69 7a 65 22 0d 00 f9 0d 42 56 |dFileSize"....BV| 000014d0 53 20 65 72 72 6f 72 0d 00 fa 10 53 55 42 20 52 |S error....SUB R| 000014e0 31 2c 52 31 2c 23 36 0d 00 fb 10 4c 44 52 42 20 |1,R1,#6....LDRB | 000014f0 52 33 2c 5b 52 31 5d 0d 00 fc 14 53 54 52 42 20 |R3,[R1]....STRB | 00001500 52 33 2c 5b 52 31 2c 23 2d 31 5d 0d 00 fd 0d 4d |R3,[R1,#-1]....M| 00001510 4f 56 20 52 33 2c 23 30 0d 00 fe 13 53 54 52 42 |OV R3,#0....STRB| 00001520 20 52 33 2c 5b 52 31 5d 2c 23 31 0d 00 ff 13 4c | R3,[R1],#1....L| 00001530 44 52 20 52 30 2c 5b 52 35 2c 23 31 32 5d 0d 01 |DR R0,[R5,#12]..| 00001540 00 0d 43 4d 50 20 52 30 2c 23 30 0d 01 01 15 42 |..CMP R0,#0....B| 00001550 45 51 20 69 6e 66 6f 5f 63 6f 6e 74 69 6e 75 65 |EQ info_continue| 00001560 0d 01 02 14 53 54 4d 46 44 20 52 31 33 21 2c 7b |....STMFD R13!,{| 00001570 52 31 34 7d 0d 01 03 19 41 44 52 20 52 31 34 2c |R14}....ADR R14,| 00001580 69 6e 66 6f 5f 66 72 65 65 63 6f 6e 74 0d 01 04 |info_freecont...| 00001590 14 41 44 52 20 52 38 2c 73 74 61 72 74 2b 35 31 |.ADR R8,start+51| 000015a0 32 0d 01 05 12 53 55 42 20 52 38 2c 52 38 2c 23 |2....SUB R8,R8,#| 000015b0 35 31 32 0d 01 06 10 41 44 44 20 50 43 2c 52 38 |512....ADD PC,R8| 000015c0 2c 52 30 0d 01 07 12 2e 69 6e 66 6f 5f 66 72 65 |,R0.....info_fre| 000015d0 65 63 6f 6e 74 0d 01 08 10 53 55 42 20 52 31 2c |econt....SUB R1,| 000015e0 52 31 2c 23 31 0d 01 09 0e 4d 4f 56 20 52 33 2c |R1,#1....MOV R3,| 000015f0 23 33 32 0d 01 0a 13 53 54 52 42 20 52 33 2c 5b |#32....STRB R3,[| 00001600 52 31 5d 2c 23 31 0d 01 0b 13 53 54 52 42 20 52 |R1],#1....STRB R| 00001610 33 2c 5b 52 31 5d 2c 23 31 0d 01 0c 22 53 57 49 |3,[R1],#1..."SWI| 00001620 20 22 58 4f 53 5f 43 6f 6e 76 65 72 74 46 69 78 | "XOS_ConvertFix| 00001630 65 64 46 69 6c 65 53 69 7a 65 22 0d 01 0d 0d 42 |edFileSize"....B| 00001640 56 53 20 65 72 72 6f 72 0d 01 0e 14 4c 44 4d 46 |VS error....LDMF| 00001650 44 20 52 31 33 21 2c 7b 52 31 34 7d 0d 01 0f 12 |D R13!,{R14}....| 00001660 2e 69 6e 66 6f 5f 63 6f 6e 74 69 6e 75 65 0d 01 |.info_continue..| 00001670 10 0e 4d 4f 56 20 52 30 2c 52 31 32 0d 01 11 14 |..MOV R0,R12....| 00001680 53 57 49 20 22 58 4f 53 5f 57 72 69 74 65 30 22 |SWI "XOS_Write0"| 00001690 0d 01 12 15 53 57 49 20 22 58 4f 53 5f 4e 65 77 |....SWI "XOS_New| 000016a0 4c 69 6e 65 22 0d 01 13 0d 42 56 53 20 65 72 72 |Line"....BVS err| 000016b0 6f 72 0d 01 14 0e 4d 4f 56 20 50 43 2c 52 31 34 |or....MOV PC,R14| 000016c0 0d 01 15 0a 2e 74 61 62 6c 65 0d 01 16 1e 44 43 |.....table....DC| 000016d0 44 20 30 20 3a 44 43 44 20 30 20 3a 44 43 44 20 |D 0 :DCD 0 :DCD | 000016e0 30 20 3a 44 43 44 20 30 0d 01 17 25 44 43 44 20 |0 :DCD 0...%DCD | 000016f0 30 20 3a 44 43 44 20 30 20 3a 44 43 44 20 30 20 |0 :DCD 0 :DCD 0 | 00001700 3a 44 43 44 20 72 6d 61 5f 66 72 65 65 0d 01 18 |:DCD rma_free...| 00001710 28 44 43 44 20 30 20 3a 44 43 44 20 30 20 3a 44 |(DCD 0 :DCD 0 :D| 00001720 43 44 20 30 20 3a 44 43 44 20 73 63 72 65 65 6e |CD 0 :DCD screen| 00001730 5f 66 72 65 65 0d 01 19 28 44 43 44 20 30 20 3a |_free...(DCD 0 :| 00001740 44 43 44 20 30 20 3a 44 43 44 20 30 20 3a 44 43 |DCD 0 :DCD 0 :DC| 00001750 44 20 73 70 72 69 74 65 5f 66 72 65 65 0d 01 1a |D sprite_free...| 00001760 26 44 43 44 20 30 20 3a 44 43 44 20 30 20 3a 44 |&DCD 0 :DCD 0 :D| 00001770 43 44 20 30 20 3a 44 43 44 20 66 6f 6e 74 5f 66 |CD 0 :DCD font_f| 00001780 72 65 65 0d 01 1b 33 44 43 44 20 30 20 3a 44 43 |ree...3DCD 0 :DC| 00001790 44 20 30 20 3a 44 43 44 20 30 20 3a 44 43 44 20 |D 0 :DCD 0 :DCD | 000017a0 2d 72 61 6d 66 73 5f 66 72 65 65 2a 28 6f 73 76 |-ramfs_free*(osv| 000017b0 65 72 25 3e 32 29 0d 01 1c 0f 2e 69 6e 66 6f 5f |er%>2).....info_| 000017c0 6e 61 6d 65 73 0d 01 1d 18 a4 6e 61 6d 65 28 22 |names.....name("| 000017d0 53 79 73 74 65 6d 20 68 65 61 70 22 29 0d 01 1e |System heap")...| 000017e0 24 a4 6e 61 6d 65 28 22 52 65 6c 6f 63 61 74 61 |$.name("Relocata| 000017f0 62 6c 65 20 4d 6f 64 75 6c 65 20 41 72 65 61 22 |ble Module Area"| 00001800 29 0d 01 1f 18 a4 6e 61 6d 65 28 22 53 63 72 65 |).....name("Scre| 00001810 65 6e 20 61 72 65 61 22 29 0d 01 20 18 a4 6e 61 |en area").. ..na| 00001820 6d 65 28 22 53 70 72 69 74 65 20 61 72 65 61 22 |me("Sprite area"| 00001830 29 0d 01 21 17 a4 6e 61 6d 65 28 22 46 6f 6e 74 |)..!..name("Font| 00001840 20 63 61 63 68 65 22 29 0d 01 22 1e a4 6e 61 6d | cache").."..nam| 00001850 65 28 22 52 41 4d 20 66 69 6c 69 6e 67 20 73 79 |e("RAM filing sy| 00001860 73 74 65 6d 22 29 0d 01 23 09 44 43 44 20 30 0d |stem")..#.DCD 0.| 00001870 01 24 0a 2e 65 72 72 6f 72 0d 01 25 09 41 4c 49 |.$..error..%.ALI| 00001880 47 4e 0d 01 26 0c 4f 50 54 20 70 61 73 73 0d 01 |GN..&.OPT pass..| 00001890 27 12 4c 44 52 20 50 43 2c 72 65 74 61 64 64 72 |'.LDR PC,retaddr| 000018a0 0d 01 28 0c 2e 72 65 74 61 64 64 72 0d 01 29 0a |..(..retaddr..).| 000018b0 45 51 55 44 20 30 0d 01 2a 12 2e 69 6e 66 6f 5f |EQUD 0..*..info_| 000018c0 68 65 61 64 69 6e 67 73 0d 01 2b 68 45 51 55 53 |headings..+hEQUS| 000018d0 20 22 44 79 6e 61 6d 69 63 20 61 72 65 61 22 2b | "Dynamic area"+| 000018e0 bd 39 2b bd 39 2b bd 39 2b bd 39 2b 22 73 69 7a |.9+.9+.9+.9+"siz| 000018f0 65 22 2b bd 39 2b bd 33 31 2b bd 33 31 2b 22 6d |e"+.9+.31+.31+"m| 00001900 61 78 22 2b bd 39 2b bd 33 31 2b bd 33 31 2b bd |ax"+.9+.31+.31+.| 00001910 33 31 2b bd 33 31 2b bd 33 31 2b bd 33 31 2b 22 |31+.31+.31+.31+"| 00001920 66 72 65 65 22 2b bd 31 33 2b bd 31 33 2b bd 30 |free"+.13+.13+.0| 00001930 0d 01 2c 0a 2e 64 65 62 75 67 0d 01 2d 13 45 51 |..,..debug..-.EQ| 00001940 55 53 20 22 44 65 62 75 67 22 2b bd 30 0d 01 2e |US "Debug"+.0...| 00001950 09 41 4c 49 47 4e 0d 01 2f 0a 2e 76 61 6c 75 65 |.ALIGN../..value| 00001960 0d 01 30 0a 45 51 55 44 20 30 0d 01 31 0e 2e 66 |..0.EQUD 0..1..f| 00001970 6f 6e 74 5f 66 72 65 65 0d 01 32 16 53 54 4d 46 |ont_free..2.STMF| 00001980 44 20 52 31 33 21 2c 7b 52 32 2d 52 33 7d 0d 01 |D R13!,{R2-R3}..| 00001990 33 19 53 57 49 20 22 58 46 6f 6e 74 5f 43 61 63 |3.SWI "XFont_Cac| 000019a0 68 65 41 64 64 72 22 0d 01 34 0d 42 56 53 20 65 |heAddr"..4.BVS e| 000019b0 72 72 6f 72 0d 01 35 10 53 55 42 20 52 30 2c 52 |rror..5.SUB R0,R| 000019c0 32 2c 52 33 0d 01 36 16 4c 44 4d 46 44 20 52 31 |2,R3..6.LDMFD R1| 000019d0 33 21 2c 7b 52 32 2d 52 33 7d 0d 01 37 0e 4d 4f |3!,{R2-R3}..7.MO| 000019e0 56 20 50 43 2c 52 31 34 0d 01 38 0d 2e 72 6d 61 |V PC,R14..8..rma| 000019f0 5f 66 72 65 65 0d 01 39 16 53 54 4d 46 44 20 52 |_free..9.STMFD R| 00001a00 31 33 21 2c 7b 52 32 2d 52 33 7d 0d 01 3a 0d 4d |13!,{R2-R3}..:.M| 00001a10 4f 56 20 52 30 2c 23 35 0d 01 3b 14 53 57 49 20 |OV R0,#5..;.SWI | 00001a20 22 58 4f 53 5f 4d 6f 64 75 6c 65 22 0d 01 3c 0d |"XOS_Module"..<.| 00001a30 42 56 53 20 65 72 72 6f 72 0d 01 3d 0d 4d 4f 56 |BVS error..=.MOV| 00001a40 20 52 30 2c 52 32 0d 01 3e 16 4c 44 4d 46 44 20 | R0,R2..>.LDMFD | 00001a50 52 31 33 21 2c 7b 52 32 2d 52 33 7d 0d 01 3f 0e |R13!,{R2-R3}..?.| 00001a60 4d 4f 56 20 50 43 2c 52 31 34 0d 01 40 10 2e 73 |MOV PC,R14..@..s| 00001a70 70 72 69 74 65 5f 66 72 65 65 0d 01 41 16 53 54 |prite_free..A.ST| 00001a80 4d 46 44 20 52 31 33 21 2c 7b 52 32 2d 52 35 7d |MFD R13!,{R2-R5}| 00001a90 0d 01 42 0d 4d 4f 56 20 52 30 2c 23 38 0d 01 43 |..B.MOV R0,#8..C| 00001aa0 16 53 57 49 20 22 58 4f 53 5f 53 70 72 69 74 65 |.SWI "XOS_Sprite| 00001ab0 4f 70 22 0d 01 44 0f 4d 4f 56 56 53 20 52 32 2c |Op"..D.MOVVS R2,| 00001ac0 52 35 0d 01 45 10 53 55 42 20 52 30 2c 52 32 2c |R5..E.SUB R0,R2,| 00001ad0 52 35 0d 01 46 16 4c 44 4d 46 44 20 52 31 33 21 |R5..F.LDMFD R13!| 00001ae0 2c 7b 52 32 2d 52 35 7d 0d 01 47 0e 4d 4f 56 20 |,{R2-R5}..G.MOV | 00001af0 50 43 2c 52 31 34 0d 01 48 10 2e 73 63 72 65 65 |PC,R14..H..scree| 00001b00 6e 5f 66 72 65 65 0d 01 49 16 53 54 4d 46 44 20 |n_free..I.STMFD | 00001b10 52 31 33 21 2c 7b 52 31 2d 52 32 7d 0d 01 4a 0d |R13!,{R1-R2}..J.| 00001b20 4d 4f 56 20 52 30 2c 23 31 0d 01 4b 0d 4d 56 4e |MOV R0,#1..K.MVN| 00001b30 20 52 31 2c 23 30 0d 01 4c 14 42 49 43 20 52 31 | R1,#0..L.BIC R1| 00001b40 2c 52 31 2c 23 31 3c 3c 33 31 0d 01 4d 1f 53 57 |,R1,#1<<31..M.SW| 00001b50 49 20 22 58 4f 53 5f 43 6c 61 69 6d 53 63 72 65 |I "XOS_ClaimScre| 00001b60 65 6e 4d 65 6d 6f 72 79 22 0d 01 4e 0d 42 56 53 |enMemory"..N.BVS| 00001b70 20 65 72 72 6f 72 0d 01 4f 0f 4d 4f 56 43 43 20 | error..O.MOVCC | 00001b80 52 30 2c 23 30 0d 01 50 21 53 57 49 43 43 20 22 |R0,#0..P!SWICC "| 00001b90 58 4f 53 5f 43 6c 61 69 6d 53 63 72 65 65 6e 4d |XOS_ClaimScreenM| 00001ba0 65 6d 6f 72 79 22 0d 01 51 0d 42 56 53 20 65 72 |emory"..Q.BVS er| 00001bb0 72 6f 72 0d 01 52 0d 4d 4f 56 20 52 30 2c 52 31 |ror..R.MOV R0,R1| 00001bc0 0d 01 53 16 4c 44 4d 46 44 20 52 31 33 21 2c 7b |..S.LDMFD R13!,{| 00001bd0 52 31 2d 52 32 7d 0d 01 54 0e 4d 4f 56 20 50 43 |R1-R2}..T.MOV PC| 00001be0 2c 52 31 34 0d 01 55 0f 2e 72 61 6d 66 73 5f 66 |,R14..U..ramfs_f| 00001bf0 72 65 65 0d 01 56 16 53 54 4d 46 44 20 52 31 33 |ree..V.STMFD R13| 00001c00 21 2c 7b 52 31 2d 52 32 7d 0d 01 57 0e 4d 4f 56 |!,{R1-R2}..W.MOV| 00001c10 20 52 30 2c 23 34 39 0d 01 58 17 41 44 52 20 52 | R0,#49..X.ADR R| 00001c20 31 2c 72 61 6d 66 73 5f 6f 62 6a 65 63 74 0d 01 |1,ramfs_object..| 00001c30 59 17 53 57 49 20 22 58 4f 53 5f 46 53 43 6f 6e |Y.SWI "XOS_FSCon| 00001c40 74 72 6f 6c 22 0d 01 5a 0f 4d 4f 56 56 53 20 52 |trol"..Z.MOVVS R| 00001c50 30 2c 23 30 0d 01 5b 16 4c 44 4d 46 44 20 52 31 |0,#0..[.LDMFD R1| 00001c60 33 21 2c 7b 52 31 2d 52 32 7d 0d 01 5c 0e 4d 4f |3!,{R1-R2}..\.MO| 00001c70 56 20 50 43 2c 52 31 34 0d 01 5d 11 2e 72 61 6d |V PC,R14..]..ram| 00001c80 66 73 5f 6f 62 6a 65 63 74 0d 01 5e 13 45 51 55 |fs_object..^.EQU| 00001c90 53 20 22 52 41 4d 3a 24 22 2b bd 30 0d 01 5f 0c |S "RAM:$"+.0.._.| 00001ca0 2e 64 65 66 61 75 6c 74 0d 01 60 14 45 51 55 53 |.default..`.EQUS| 00001cb0 20 22 2d 68 2d 64 2d 69 22 2b bd 30 0d 01 61 05 | "-h-d-i"+.0..a.| 00001cc0 5d 0d 01 62 05 e1 0d ff |]..b....| 00001cc8