Home » CEEFAX disks » telesoftware3.adl » 04_12_87/OSWDEMO
04_12_87/OSWDEMO
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 » CEEFAX disks » telesoftware3.adl |
Filename: | 04_12_87/OSWDEMO |
Read OK: | ✔ |
File size: | 02E3 bytes |
Load address: | FFFF1900 |
Exec address: | FFFF8023 |
Duplicates
There is 1 duplicate copy of this file in the archive:
- CEEFAX disks » telesoftware3.adl » 04_12_87/OSWDEMO
- CEEFAX disks » telesoftware8.adl » 19-08-88/OSWDEMO
File contents
10REM: OSWDEMO 20MODE7 30DIM mcode &100 40osword=&FFF1 50FOR pass=0 TO 2 STEP 2 60P%=mcode 70[OPT pass 80LDA #100 90LDX #pblock MOD 256 100LDY #pblock DIV 256 110JSR osword 120LDA #100 130LDX #pblock2 MOD 256 140LDY #pblock2 DIV 256 150JSR osword 160RTS 170.pblock 180OPT FNequw(text) 190OPT FNequb(5) 200OPT FNequb(11) 210.pblock2 220OPT FNequw(text) 230OPT FNequb(5) 240OPT FNequb(12) 250.text 260OPT FNequb(141) 270OPT FNequb(131) 280OPT FNequs("Demonstration of new Osword") 290OPT FNequb(13) 300] 310NEXT 320CALL mcode 330END 340DEFFNequb(byte) 350?P%=byte 360P%=P%+1 370=pass 380DEFFNequw(word) 390?P%=word MOD 256 400P%?1=word DIV 256 410P%=P%+2 420=pass 430DEFFNequd(double) 440!P%=double 450P%=P%+4 460=pass 470DEFFNequs(string$) 480$P%=string$ 490P%=P%+LEN(string$) 500=pass
�: OSWDEMO �7 � mcode &100 (osword=&FFF1 2� pass=0 � 2 � 2 <P%=mcode F [OPT pass PLDA #100 ZLDX #pblock � 256 dLDY #pblock � 256 nJSR osword xLDA #100 �LDX #pblock2 � 256 �LDY #pblock2 � 256 �JSR osword �RTS �.pblock �OPT �equw(text) �OPT �equb(5) �OPT �equb(11) �.pblock2 �OPT �equw(text) �OPT �equb(5) �OPT �equb(12) � .text OPT �equb(141) OPT �equb(131) ,OPT �equs("Demonstration of new Osword") "OPT �equb(13) ,] 6� @� mcode J� Tݤequb(byte) ^?P%=byte hP%=P%+1 r =pass |ݤequw(word) �?P%=word � 256 �P%?1=word � 256 �P%=P%+2 � =pass �ݤequd(double) �!P%=double �P%=P%+4 � =pass �ݤequs(string$) �$P%=string$ �P%=P%+�(string$) � =pass �
00000000 0d 00 0a 0e f4 3a 20 4f 53 57 44 45 4d 4f 0d 00 |.....: OSWDEMO..| 00000010 14 06 eb 37 0d 00 1e 10 de 20 6d 63 6f 64 65 20 |...7..... mcode | 00000020 26 31 30 30 0d 00 28 10 6f 73 77 6f 72 64 3d 26 |&100..(.osword=&| 00000030 46 46 46 31 0d 00 32 14 e3 20 70 61 73 73 3d 30 |FFF1..2.. pass=0| 00000040 20 b8 20 32 20 88 20 32 0d 00 3c 0c 50 25 3d 6d | . 2 . 2..<.P%=m| 00000050 63 6f 64 65 0d 00 46 0d 5b 4f 50 54 20 70 61 73 |code..F.[OPT pas| 00000060 73 0d 00 50 0c 4c 44 41 20 23 31 30 30 0d 00 5a |s..P.LDA #100..Z| 00000070 15 4c 44 58 20 23 70 62 6c 6f 63 6b 20 83 20 32 |.LDX #pblock . 2| 00000080 35 36 0d 00 64 15 4c 44 59 20 23 70 62 6c 6f 63 |56..d.LDY #pbloc| 00000090 6b 20 81 20 32 35 36 0d 00 6e 0e 4a 53 52 20 6f |k . 256..n.JSR o| 000000a0 73 77 6f 72 64 0d 00 78 0c 4c 44 41 20 23 31 30 |sword..x.LDA #10| 000000b0 30 0d 00 82 16 4c 44 58 20 23 70 62 6c 6f 63 6b |0....LDX #pblock| 000000c0 32 20 83 20 32 35 36 0d 00 8c 16 4c 44 59 20 23 |2 . 256....LDY #| 000000d0 70 62 6c 6f 63 6b 32 20 81 20 32 35 36 0d 00 96 |pblock2 . 256...| 000000e0 0e 4a 53 52 20 6f 73 77 6f 72 64 0d 00 a0 07 52 |.JSR osword....R| 000000f0 54 53 0d 00 aa 0b 2e 70 62 6c 6f 63 6b 0d 00 b4 |TS.....pblock...| 00000100 13 4f 50 54 20 a4 65 71 75 77 28 74 65 78 74 29 |.OPT .equw(text)| 00000110 0d 00 be 10 4f 50 54 20 a4 65 71 75 62 28 35 29 |....OPT .equb(5)| 00000120 0d 00 c8 11 4f 50 54 20 a4 65 71 75 62 28 31 31 |....OPT .equb(11| 00000130 29 0d 00 d2 0c 2e 70 62 6c 6f 63 6b 32 0d 00 dc |).....pblock2...| 00000140 13 4f 50 54 20 a4 65 71 75 77 28 74 65 78 74 29 |.OPT .equw(text)| 00000150 0d 00 e6 10 4f 50 54 20 a4 65 71 75 62 28 35 29 |....OPT .equb(5)| 00000160 0d 00 f0 11 4f 50 54 20 a4 65 71 75 62 28 31 32 |....OPT .equb(12| 00000170 29 0d 00 fa 09 2e 74 65 78 74 0d 01 04 12 4f 50 |).....text....OP| 00000180 54 20 a4 65 71 75 62 28 31 34 31 29 0d 01 0e 12 |T .equb(141)....| 00000190 4f 50 54 20 a4 65 71 75 62 28 31 33 31 29 0d 01 |OPT .equb(131)..| 000001a0 18 2c 4f 50 54 20 a4 65 71 75 73 28 22 44 65 6d |.,OPT .equs("Dem| 000001b0 6f 6e 73 74 72 61 74 69 6f 6e 20 6f 66 20 6e 65 |onstration of ne| 000001c0 77 20 4f 73 77 6f 72 64 22 29 0d 01 22 11 4f 50 |w Osword")..".OP| 000001d0 54 20 a4 65 71 75 62 28 31 33 29 0d 01 2c 05 5d |T .equb(13)..,.]| 000001e0 0d 01 36 05 ed 0d 01 40 0b d6 20 6d 63 6f 64 65 |..6....@.. mcode| 000001f0 0d 01 4a 05 e0 0d 01 54 10 dd a4 65 71 75 62 28 |..J....T...equb(| 00000200 62 79 74 65 29 0d 01 5e 0c 3f 50 25 3d 62 79 74 |byte)..^.?P%=byt| 00000210 65 0d 01 68 0b 50 25 3d 50 25 2b 31 0d 01 72 09 |e..h.P%=P%+1..r.| 00000220 3d 70 61 73 73 0d 01 7c 10 dd a4 65 71 75 77 28 |=pass..|...equw(| 00000230 77 6f 72 64 29 0d 01 86 12 3f 50 25 3d 77 6f 72 |word)....?P%=wor| 00000240 64 20 83 20 32 35 36 0d 01 90 13 50 25 3f 31 3d |d . 256....P%?1=| 00000250 77 6f 72 64 20 81 20 32 35 36 0d 01 9a 0b 50 25 |word . 256....P%| 00000260 3d 50 25 2b 32 0d 01 a4 09 3d 70 61 73 73 0d 01 |=P%+2....=pass..| 00000270 ae 12 dd a4 65 71 75 64 28 64 6f 75 62 6c 65 29 |....equd(double)| 00000280 0d 01 b8 0e 21 50 25 3d 64 6f 75 62 6c 65 0d 01 |....!P%=double..| 00000290 c2 0b 50 25 3d 50 25 2b 34 0d 01 cc 09 3d 70 61 |..P%=P%+4....=pa| 000002a0 73 73 0d 01 d6 13 dd a4 65 71 75 73 28 73 74 72 |ss......equs(str| 000002b0 69 6e 67 24 29 0d 01 e0 0f 24 50 25 3d 73 74 72 |ing$)....$P%=str| 000002c0 69 6e 67 24 0d 01 ea 14 50 25 3d 50 25 2b a9 28 |ing$....P%=P%+.(| 000002d0 73 74 72 69 6e 67 24 29 0d 01 f4 09 3d 70 61 73 |string$)....=pas| 000002e0 73 0d ff |s..| 000002e3