Home » Archimedes archive » Micro User » MU 1991-10.adf » Listings » Routines/Italics
Routines/Italics
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 » Micro User » MU 1991-10.adf » Listings |
Filename: | Routines/Italics |
Read OK: | ✔ |
File size: | 02D6 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM Italics 20REM by Richard Hindle 30REM (c) The Micro User 40FOR pass=0 TO 3 STEP 3 50P%=&900:[OPT pass 60.italics \ CALL italics or &900 70LDA &20E:STA old_vector 80LDA &20F:STA old_vector+1 90LDA #start MOD 256:STA &20E 100LDA #start DIV 256:STA &20F:RTS 110.normal \ CALL normal or &917 120LDA old_vector:STA &20E 130LDA old_vector+1:STA &20F:RTS 140.start 150STA &CF7:TXA:PHA:TYA:PHA 160LDA #218:LDX #0:LDY #255 170JSR &FFF4:TXA:BNE chain_on 180LDA &CF7:CMP #33:BCC chain_on 190CMP #127:BEQ chain_on 200LDA #&A:LDX #&F7:LDY #&C 210JSR &FFF1:LSR &CF8:LSR &CF9 220ASL &CFD:ASL &CFE:ASL &CFF 230LDA #&9F:STA &CF7 240.chain_on 250PLA:TAY:PLA:TAX:LDA &CF7 260JMP (old_vector) 270.old_vector BRK:BRK 280]:NEXT:*SAVE ITALICS 900 +70
� Italics � by Richard Hindle � (c) The Micro User (� pass=0 � 3 � 3 2P%=&900:[OPT pass <".italics \ � italics or &900 FLDA &20E:STA old_vector PLDA &20F:STA old_vector+1 ZLDA #start � 256:STA &20E d!LDA #start � 256:STA &20F:RTS n".normal \ � normal or &917 xLDA old_vector:STA &20E �!LDA old_vector+1:STA &20F:RTS � .start �STA &CF7:TXA:PHA:TYA:PHA �LDA #218:LDX #0:LDY #255 �JSR &FFF4:TXA:BNE chain_on �!LDA &CF7:CMP #33:BCC chain_on �CMP #127:BEQ chain_on �LDA #&A:LDX #&F7:LDY #&C �JSR &FFF1:LSR &CF8:LSR &CF9 �ASL &CFD:ASL &CFE:ASL &CFF �LDA #&9F:STA &CF7 � .chain_on �PLA:TAY:PLA:TAX:LDA &CF7 JMP (old_vector) .old_vector BRK:BRK ]:�:*SAVE ITALICS 900 +70 �
00000000 0d 00 0a 0d f4 20 49 74 61 6c 69 63 73 0d 00 14 |..... Italics...| 00000010 17 f4 20 62 79 20 52 69 63 68 61 72 64 20 48 69 |.. by Richard Hi| 00000020 6e 64 6c 65 0d 00 1e 18 f4 20 28 63 29 20 54 68 |ndle..... (c) Th| 00000030 65 20 4d 69 63 72 6f 20 55 73 65 72 0d 00 28 14 |e Micro User..(.| 00000040 e3 20 70 61 73 73 3d 30 20 b8 20 33 20 88 20 33 |. pass=0 . 3 . 3| 00000050 0d 00 32 15 50 25 3d 26 39 30 30 3a 5b 4f 50 54 |..2.P%=&900:[OPT| 00000060 20 70 61 73 73 0d 00 3c 22 2e 69 74 61 6c 69 63 | pass..<".italic| 00000070 73 20 20 20 5c 20 d6 20 69 74 61 6c 69 63 73 20 |s \ . italics | 00000080 6f 72 20 26 39 30 30 0d 00 46 1b 4c 44 41 20 26 |or &900..F.LDA &| 00000090 32 30 45 3a 53 54 41 20 6f 6c 64 5f 76 65 63 74 |20E:STA old_vect| 000000a0 6f 72 0d 00 50 1d 4c 44 41 20 26 32 30 46 3a 53 |or..P.LDA &20F:S| 000000b0 54 41 20 6f 6c 64 5f 76 65 63 74 6f 72 2b 31 0d |TA old_vector+1.| 000000c0 00 5a 1d 4c 44 41 20 23 73 74 61 72 74 20 83 20 |.Z.LDA #start . | 000000d0 32 35 36 3a 53 54 41 20 26 32 30 45 0d 00 64 21 |256:STA &20E..d!| 000000e0 4c 44 41 20 23 73 74 61 72 74 20 81 20 32 35 36 |LDA #start . 256| 000000f0 3a 53 54 41 20 26 32 30 46 3a 52 54 53 0d 00 6e |:STA &20F:RTS..n| 00000100 22 2e 6e 6f 72 6d 61 6c 20 20 20 20 5c 20 d6 20 |".normal \ . | 00000110 6e 6f 72 6d 61 6c 20 20 6f 72 20 26 39 31 37 0d |normal or &917.| 00000120 00 78 1b 4c 44 41 20 6f 6c 64 5f 76 65 63 74 6f |.x.LDA old_vecto| 00000130 72 3a 53 54 41 20 26 32 30 45 0d 00 82 21 4c 44 |r:STA &20E...!LD| 00000140 41 20 6f 6c 64 5f 76 65 63 74 6f 72 2b 31 3a 53 |A old_vector+1:S| 00000150 54 41 20 26 32 30 46 3a 52 54 53 0d 00 8c 0a 2e |TA &20F:RTS.....| 00000160 73 74 61 72 74 0d 00 96 1c 53 54 41 20 26 43 46 |start....STA &CF| 00000170 37 3a 54 58 41 3a 50 48 41 3a 54 59 41 3a 50 48 |7:TXA:PHA:TYA:PH| 00000180 41 0d 00 a0 1c 4c 44 41 20 23 32 31 38 3a 4c 44 |A....LDA #218:LD| 00000190 58 20 23 30 3a 4c 44 59 20 23 32 35 35 0d 00 aa |X #0:LDY #255...| 000001a0 1e 4a 53 52 20 26 46 46 46 34 3a 54 58 41 3a 42 |.JSR &FFF4:TXA:B| 000001b0 4e 45 20 63 68 61 69 6e 5f 6f 6e 0d 00 b4 21 4c |NE chain_on...!L| 000001c0 44 41 20 26 43 46 37 3a 43 4d 50 20 23 33 33 3a |DA &CF7:CMP #33:| 000001d0 42 43 43 20 63 68 61 69 6e 5f 6f 6e 0d 00 be 19 |BCC chain_on....| 000001e0 43 4d 50 20 23 31 32 37 3a 42 45 51 20 63 68 61 |CMP #127:BEQ cha| 000001f0 69 6e 5f 6f 6e 0d 00 c8 1c 4c 44 41 20 23 26 41 |in_on....LDA #&A| 00000200 3a 4c 44 58 20 23 26 46 37 3a 4c 44 59 20 23 26 |:LDX #&F7:LDY #&| 00000210 43 0d 00 d2 1f 4a 53 52 20 26 46 46 46 31 3a 4c |C....JSR &FFF1:L| 00000220 53 52 20 26 43 46 38 3a 4c 53 52 20 26 43 46 39 |SR &CF8:LSR &CF9| 00000230 0d 00 dc 1e 41 53 4c 20 26 43 46 44 3a 41 53 4c |....ASL &CFD:ASL| 00000240 20 26 43 46 45 3a 41 53 4c 20 26 43 46 46 0d 00 | &CFE:ASL &CFF..| 00000250 e6 15 4c 44 41 20 23 26 39 46 3a 53 54 41 20 26 |..LDA #&9F:STA &| 00000260 43 46 37 0d 00 f0 0d 2e 63 68 61 69 6e 5f 6f 6e |CF7.....chain_on| 00000270 0d 00 fa 1c 50 4c 41 3a 54 41 59 3a 50 4c 41 3a |....PLA:TAY:PLA:| 00000280 54 41 58 3a 4c 44 41 20 26 43 46 37 0d 01 04 14 |TAX:LDA &CF7....| 00000290 4a 4d 50 20 28 6f 6c 64 5f 76 65 63 74 6f 72 29 |JMP (old_vector)| 000002a0 0d 01 0e 17 2e 6f 6c 64 5f 76 65 63 74 6f 72 20 |.....old_vector | 000002b0 42 52 4b 3a 42 52 4b 0d 01 18 1d 5d 3a ed 3a 2a |BRK:BRK....]:.:*| 000002c0 53 41 56 45 20 49 54 41 4c 49 43 53 20 39 30 30 |SAVE ITALICS 900| 000002d0 20 2b 37 30 0d ff | +70..| 000002d6