Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_51.ADF » U/TEXT2

U/TEXT2

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 ADFS disks » Electron_User_Group » EUG_51.ADF
Filename: U/TEXT2
Read OK:
File size: 0408 bytes
Load address: FFFF0E00
Exec address: FFFF802B
Duplicates

There are 2 duplicate copies of this file in the archive:

File contents
   10REM
   20REM"�Double Height Characters
   30REM"�By�The Welder/Faith^Darkage
   40REM"�Faith Productions�1998
   50PROCassemble:MODE1:VDU23,1,0;0;0;0;10,10,10,10,17,1
   60PROCdouble("        Double Height Characters")
   70COLOUR3:PRINT''''"This is possibly the smallest routine"'"for producing double height characters."'''"NO nasty tricks are involved like I've"'"seen in other people's similar routines,just proper character manipulation."
   80PRINT''"The code is a meer 76 bytes and it"'"might be quite interesting to see if"'"anyone out there can optimise or reduce"'"it's size...  So, give it a go!"'':COLOUR2
   90PROCdouble("          Live Long And Prosper")
  100PRINT':END
  110DEFPROCassemble:LOCALI%,P%:DIMQ%80:FORI%=0TO2STEP2:P%=Q%:[OPTI%:STAbits:LDA#10:LDX#bits MOD256:LDY#bits DIV256:JSR&FFF1:LDX#1:LDY#0:.lp LDA#23:JSR&FFEE:TXA:PHA:ORA#224:JSR&FFEE:LDX#0:.lp2 LDAchar,Y:JSR&FFEE:JSR&FFEE:INY:INX:CPX#4
  120BNElp2:PLA:TAX:DEX:BPLlp:LDX#4:.lp3 LDAvdu,X:JSR&FFEE:DEX:BPLlp3:RTS:.bits EQUB0:.char EQUD0:EQUD0:.vdu EQUD&A08E00B:EQUB&E1:]:NEXT:ENDPROC
  130DEFPROCdouble(A$):LOCALA%,I%:FORI%=1TOLEN(A$):A%=ASC(MID$(A$,I%,1)):CALLQ%:NEXT:ENDPROC

�
�"�Double Height Characters
"�"�By�The Welder/Faith^Darkage
(�"�Faith Productions�1998
2/�assemble:�1:�23,1,0;0;0;0;10,10,10,10,17,1
</�double("        Double Height Characters")
F�3:�''''"This is possibly the smallest routine"'"for producing double height characters."'''"NO nasty tricks are involved like I've"'"seen in other people's similar routines,just proper character manipulation."
P��''"The code is a meer 76 bytes and it"'"might be quite interesting to see if"'"anyone out there can optimise or reduce"'"it's size...  So, give it a go!"'':�2
Z.�double("          Live Long And Prosper")
d�':�
n���assemble:�I%,P%:�Q%80:�I%=0�2�2:P%=Q%:[OPTI%:STAbits:LDA#10:LDX#bits �256:LDY#bits �256:JSR&FFF1:LDX#1:LDY#0:.lp LDA#23:JSR&FFEE:TXA:PHA:�A#224:JSR&FFEE:LDX#0:.lp2 LDAchar,Y:JSR&FFEE:JSR&FFEE:INY:INX:CPX#4
x�BNElp2:PLA:TAX:DEX:BPLlp:LDX#4:.lp3 LDAvdu,X:JSR&FFEE:DEX:BPLlp3:RTS:.bits EQUB0:.char EQUD0:EQUD0:.vdu EQUD&A08E00B:EQUB&E1:]:�:�
�;��double(A$):�A%,I%:�I%=1��(A$):A%=�(�A$,I%,1)):�Q%:�:�
�
00000000  0d 00 0a 07 f4 16 07 0d  00 14 1f f4 22 81 44 6f  |............".Do|
00000010  75 62 6c 65 20 48 65 69  67 68 74 20 43 68 61 72  |uble Height Char|
00000020  61 63 74 65 72 73 0d 00  1e 22 f4 22 82 42 79 84  |acters...".".By.|
00000030  54 68 65 20 57 65 6c 64  65 72 2f 46 61 69 74 68  |The Welder/Faith|
00000040  5e 44 61 72 6b 61 67 65  0d 00 28 1d f4 22 85 46  |^Darkage..(..".F|
00000050  61 69 74 68 20 50 72 6f  64 75 63 74 69 6f 6e 73  |aith Productions|
00000060  86 31 39 39 38 0d 00 32  2f f2 61 73 73 65 6d 62  |.1998..2/.assemb|
00000070  6c 65 3a eb 31 3a ef 32  33 2c 31 2c 30 3b 30 3b  |le:.1:.23,1,0;0;|
00000080  30 3b 30 3b 31 30 2c 31  30 2c 31 30 2c 31 30 2c  |0;0;10,10,10,10,|
00000090  31 37 2c 31 0d 00 3c 2f  f2 64 6f 75 62 6c 65 28  |17,1..</.double(|
000000a0  22 20 20 20 20 20 20 20  20 44 6f 75 62 6c 65 20  |"        Double |
000000b0  48 65 69 67 68 74 20 43  68 61 72 61 63 74 65 72  |Height Character|
000000c0  73 22 29 0d 00 46 d6 fb  33 3a f1 27 27 27 27 22  |s")..F..3:.''''"|
000000d0  54 68 69 73 20 69 73 20  70 6f 73 73 69 62 6c 79  |This is possibly|
000000e0  20 74 68 65 20 73 6d 61  6c 6c 65 73 74 20 72 6f  | the smallest ro|
000000f0  75 74 69 6e 65 22 27 22  66 6f 72 20 70 72 6f 64  |utine"'"for prod|
00000100  75 63 69 6e 67 20 64 6f  75 62 6c 65 20 68 65 69  |ucing double hei|
00000110  67 68 74 20 63 68 61 72  61 63 74 65 72 73 2e 22  |ght characters."|
00000120  27 27 27 22 4e 4f 20 6e  61 73 74 79 20 74 72 69  |'''"NO nasty tri|
00000130  63 6b 73 20 61 72 65 20  69 6e 76 6f 6c 76 65 64  |cks are involved|
00000140  20 6c 69 6b 65 20 49 27  76 65 22 27 22 73 65 65  | like I've"'"see|
00000150  6e 20 69 6e 20 6f 74 68  65 72 20 70 65 6f 70 6c  |n in other peopl|
00000160  65 27 73 20 73 69 6d 69  6c 61 72 20 72 6f 75 74  |e's similar rout|
00000170  69 6e 65 73 2c 6a 75 73  74 20 70 72 6f 70 65 72  |ines,just proper|
00000180  20 63 68 61 72 61 63 74  65 72 20 6d 61 6e 69 70  | character manip|
00000190  75 6c 61 74 69 6f 6e 2e  22 0d 00 50 a3 f1 27 27  |ulation."..P..''|
000001a0  22 54 68 65 20 63 6f 64  65 20 69 73 20 61 20 6d  |"The code is a m|
000001b0  65 65 72 20 37 36 20 62  79 74 65 73 20 61 6e 64  |eer 76 bytes and|
000001c0  20 69 74 22 27 22 6d 69  67 68 74 20 62 65 20 71  | it"'"might be q|
000001d0  75 69 74 65 20 69 6e 74  65 72 65 73 74 69 6e 67  |uite interesting|
000001e0  20 74 6f 20 73 65 65 20  69 66 22 27 22 61 6e 79  | to see if"'"any|
000001f0  6f 6e 65 20 6f 75 74 20  74 68 65 72 65 20 63 61  |one out there ca|
00000200  6e 20 6f 70 74 69 6d 69  73 65 20 6f 72 20 72 65  |n optimise or re|
00000210  64 75 63 65 22 27 22 69  74 27 73 20 73 69 7a 65  |duce"'"it's size|
00000220  2e 2e 2e 20 20 53 6f 2c  20 67 69 76 65 20 69 74  |...  So, give it|
00000230  20 61 20 67 6f 21 22 27  27 3a fb 32 0d 00 5a 2e  | a go!"'':.2..Z.|
00000240  f2 64 6f 75 62 6c 65 28  22 20 20 20 20 20 20 20  |.double("       |
00000250  20 20 20 4c 69 76 65 20  4c 6f 6e 67 20 41 6e 64  |   Live Long And|
00000260  20 50 72 6f 73 70 65 72  22 29 0d 00 64 08 f1 27  | Prosper")..d..'|
00000270  3a e0 0d 00 6e d3 dd f2  61 73 73 65 6d 62 6c 65  |:...n...assemble|
00000280  3a ea 49 25 2c 50 25 3a  de 51 25 38 30 3a e3 49  |:.I%,P%:.Q%80:.I|
00000290  25 3d 30 b8 32 88 32 3a  50 25 3d 51 25 3a 5b 4f  |%=0.2.2:P%=Q%:[O|
000002a0  50 54 49 25 3a 53 54 41  62 69 74 73 3a 4c 44 41  |PTI%:STAbits:LDA|
000002b0  23 31 30 3a 4c 44 58 23  62 69 74 73 20 83 32 35  |#10:LDX#bits .25|
000002c0  36 3a 4c 44 59 23 62 69  74 73 20 81 32 35 36 3a  |6:LDY#bits .256:|
000002d0  4a 53 52 26 46 46 46 31  3a 4c 44 58 23 31 3a 4c  |JSR&FFF1:LDX#1:L|
000002e0  44 59 23 30 3a 2e 6c 70  20 4c 44 41 23 32 33 3a  |DY#0:.lp LDA#23:|
000002f0  4a 53 52 26 46 46 45 45  3a 54 58 41 3a 50 48 41  |JSR&FFEE:TXA:PHA|
00000300  3a 84 41 23 32 32 34 3a  4a 53 52 26 46 46 45 45  |:.A#224:JSR&FFEE|
00000310  3a 4c 44 58 23 30 3a 2e  6c 70 32 20 4c 44 41 63  |:LDX#0:.lp2 LDAc|
00000320  68 61 72 2c 59 3a 4a 53  52 26 46 46 45 45 3a 4a  |har,Y:JSR&FFEE:J|
00000330  53 52 26 46 46 45 45 3a  49 4e 59 3a 49 4e 58 3a  |SR&FFEE:INY:INX:|
00000340  43 50 58 23 34 0d 00 78  86 42 4e 45 6c 70 32 3a  |CPX#4..x.BNElp2:|
00000350  50 4c 41 3a 54 41 58 3a  44 45 58 3a 42 50 4c 6c  |PLA:TAX:DEX:BPLl|
00000360  70 3a 4c 44 58 23 34 3a  2e 6c 70 33 20 4c 44 41  |p:LDX#4:.lp3 LDA|
00000370  76 64 75 2c 58 3a 4a 53  52 26 46 46 45 45 3a 44  |vdu,X:JSR&FFEE:D|
00000380  45 58 3a 42 50 4c 6c 70  33 3a 52 54 53 3a 2e 62  |EX:BPLlp3:RTS:.b|
00000390  69 74 73 20 45 51 55 42  30 3a 2e 63 68 61 72 20  |its EQUB0:.char |
000003a0  45 51 55 44 30 3a 45 51  55 44 30 3a 2e 76 64 75  |EQUD0:EQUD0:.vdu|
000003b0  20 45 51 55 44 26 41 30  38 45 30 30 42 3a 45 51  | EQUD&A08E00B:EQ|
000003c0  55 42 26 45 31 3a 5d 3a  ed 3a e1 0d 00 82 3b dd  |UB&E1:]:.:....;.|
000003d0  f2 64 6f 75 62 6c 65 28  41 24 29 3a ea 41 25 2c  |.double(A$):.A%,|
000003e0  49 25 3a e3 49 25 3d 31  b8 a9 28 41 24 29 3a 41  |I%:.I%=1..(A$):A|
000003f0  25 3d 97 28 c1 41 24 2c  49 25 2c 31 29 29 3a d6  |%=.(.A$,I%,1)):.|
00000400  51 25 3a ed 3a e1 0d ff                           |Q%:.:...|
00000408
U/TEXT2.m0
U/TEXT2.m1
U/TEXT2.m2
U/TEXT2.m4
U/TEXT2.m5