Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_32.ADF » PRINT

PRINT

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_32.ADF
Filename: PRINT
Read OK:
File size: 0457 bytes
Load address: FFFF0E00
Exec address: FFFF802B
File contents
   10REM Program for printing all text files - Richard Dimond, June 1996
   20*LOAD $.CODE6
   30HIMEM=&2600
   40VDU23,1,0;0;0;0;
   50skip=&82:?skip=0
   60CLS:PRINT"All text files will be printed."''"Screen or Printer? (S/P)"
   70REPEAT:a%=INSTR("SsNn",GET$):UNTILa%
   80VDU22,3
   90IFa%<3 PROCscreen ELSE PROCprinter
  110PRINT''"PRESS SPACE FOR MENU"
  120REPEATUNTILINKEY-99
  130CHAIN"MENU"
  140END
  150DEFPROCscreen:P=FALSE
  160PROCtext:ENDPROC
  170DEFPROCprinter:P=TRUE
  180PRINT''"Do you want perforation skip? (Y/N)":REPEAT:a%=INSTR("YyNn",GET$):UNTILa%
  190IFa%<3 ?skip=-1 ELSE ?skip=0
  200VDU15,2:PROCtext:VDU3:ENDPROC
  210DEFPROCtext
  220PROCreaddir
  230OSCLI"DIR L":PROCreaddir
  250OSCLI"DIR $.G":PROCreaddir
  270OSCLI"DIR $.P":PROCreaddir
  280OSCLI"DIR $.S":PROCreaddir
  290OSCLI"DIR $"
  300ENDPROC
  310DEFPROCreaddir
  320osgbpb=&FFD1
  330DIM parblk &0C
  340DIM filename 10
  350A%=8
  360X%=parblk MOD&100
  370Y%=parblk DIV&100
  380 
  390parblk!9=0
  400REPEAT
  410 parblk!1=filename
  420 parblk!5=1
  430 CALLosgbpb
  440 IFparblk!5<>1 THEN IFfilename?1=ASC"+" PROCprint
  450UNTIL parblk!5=1
  460ENDPROC
  470DEFPROCprint
  480fn$=""
  490CALL&900
  500FORx%=1TO ?filename
  510f$=CHR$?(filename+x%)
  520fn$=fn$+f$
  530NEXT
  540VDU22,6
  550OSCLI"LOAD "+fn$+" 2600"+CHR$13
  560VDU22,3:IFP VDU15,2 ELSE VDU14:PRINT'"PRESS SHIFT TO SCROLL"''
  570CALL&903
  575IFNOT P PRINT''"PRESS SPACE TO CONTINUE":REPEATUNTILINKEY-99
  580PRINT''
  590VDU3
  600ENDPROC
  610DEFPROCswap

E� Program for printing all text files - Richard Dimond, June 1996
*LOAD $.CODE6
�=&2600
(�23,1,0;0;0;0;
2skip=&82:?skip=0
<D�:�"All text files will be printed."''"Screen or Printer? (S/P)"
F�:a%=�"SsNn",�):�a%
P	�22,3
Z�a%<3 �screen � �printer
n�''"PRESS SPACE FOR MENU"
x
���-99
��"MENU"
��
���screen:P=�
��text:�
���printer:P=�
�@�''"Do you want perforation skip? (Y/N)":�:a%=�"YyNn",�):�a%
��a%<3 ?skip=-1 � ?skip=0
��15,2:�text:�3:�
�
��text
��readdir
��"DIR L":�readdir
��"DIR $.G":�readdir
�"DIR $.P":�readdir
�"DIR $.S":�readdir
"�"DIR $"
,�
6
��readdir
@osgbpb=&FFD1
J� parblk &0C
T� filename 10
^A%=8
hX%=parblk �&100
rY%=parblk �&100
| 
�parblk!9=0
��
� parblk!1=filename
� parblk!5=1
� �osgbpb
�+ �parblk!5<>1 � �filename?1=�"+" �print
�� parblk!5=1
��
���print
�
fn$=""
�	�&900
��x%=1� ?filename
�f$=�?(filename+x%)
fn$=fn$+f$
�
	�22,6
&�"LOAD "+fn$+" 2600"+�13
04�22,3:�P �15,2 � �14:�'"PRESS SHIFT TO SCROLL"''
:	�&903
?,� P �''"PRESS SPACE TO CONTINUE":���-99
D�''
N�3
X�
b
��swap
�
00000000  0d 00 0a 45 f4 20 50 72  6f 67 72 61 6d 20 66 6f  |...E. Program fo|
00000010  72 20 70 72 69 6e 74 69  6e 67 20 61 6c 6c 20 74  |r printing all t|
00000020  65 78 74 20 66 69 6c 65  73 20 2d 20 52 69 63 68  |ext files - Rich|
00000030  61 72 64 20 44 69 6d 6f  6e 64 2c 20 4a 75 6e 65  |ard Dimond, June|
00000040  20 31 39 39 36 0d 00 14  11 2a 4c 4f 41 44 20 24  | 1996....*LOAD $|
00000050  2e 43 4f 44 45 36 0d 00  1e 0b d3 3d 26 32 36 30  |.CODE6.....=&260|
00000060  30 0d 00 28 12 ef 32 33  2c 31 2c 30 3b 30 3b 30  |0..(..23,1,0;0;0|
00000070  3b 30 3b 0d 00 32 14 73  6b 69 70 3d 26 38 32 3a  |;0;..2.skip=&82:|
00000080  3f 73 6b 69 70 3d 30 0d  00 3c 44 db 3a f1 22 41  |?skip=0..<D.:."A|
00000090  6c 6c 20 74 65 78 74 20  66 69 6c 65 73 20 77 69  |ll text files wi|
000000a0  6c 6c 20 62 65 20 70 72  69 6e 74 65 64 2e 22 27  |ll be printed."'|
000000b0  27 22 53 63 72 65 65 6e  20 6f 72 20 50 72 69 6e  |'"Screen or Prin|
000000c0  74 65 72 3f 20 28 53 2f  50 29 22 0d 00 46 17 f5  |ter? (S/P)"..F..|
000000d0  3a 61 25 3d a7 22 53 73  4e 6e 22 2c be 29 3a fd  |:a%=."SsNn",.):.|
000000e0  61 25 0d 00 50 09 ef 32  32 2c 33 0d 00 5a 1c e7  |a%..P..22,3..Z..|
000000f0  61 25 3c 33 20 f2 73 63  72 65 65 6e 20 8b 20 f2  |a%<3 .screen . .|
00000100  70 72 69 6e 74 65 72 0d  00 6e 1d f1 27 27 22 50  |printer..n..''"P|
00000110  52 45 53 53 20 53 50 41  43 45 20 46 4f 52 20 4d  |RESS SPACE FOR M|
00000120  45 4e 55 22 0d 00 78 0a  f5 fd a6 2d 39 39 0d 00  |ENU"..x....-99..|
00000130  82 0b d7 22 4d 45 4e 55  22 0d 00 8c 05 e0 0d 00  |..."MENU".......|
00000140  96 10 dd f2 73 63 72 65  65 6e 3a 50 3d a3 0d 00  |....screen:P=...|
00000150  a0 0b f2 74 65 78 74 3a  e1 0d 00 aa 11 dd f2 70  |...text:.......p|
00000160  72 69 6e 74 65 72 3a 50  3d b9 0d 00 b4 40 f1 27  |rinter:P=....@.'|
00000170  27 22 44 6f 20 79 6f 75  20 77 61 6e 74 20 70 65  |'"Do you want pe|
00000180  72 66 6f 72 61 74 69 6f  6e 20 73 6b 69 70 3f 20  |rforation skip? |
00000190  28 59 2f 4e 29 22 3a f5  3a 61 25 3d a7 22 59 79  |(Y/N)":.:a%=."Yy|
000001a0  4e 6e 22 2c be 29 3a fd  61 25 0d 00 be 1c e7 61  |Nn",.):.a%.....a|
000001b0  25 3c 33 20 3f 73 6b 69  70 3d 2d 31 20 8b 20 3f  |%<3 ?skip=-1 . ?|
000001c0  73 6b 69 70 3d 30 0d 00  c8 14 ef 31 35 2c 32 3a  |skip=0.....15,2:|
000001d0  f2 74 65 78 74 3a ef 33  3a e1 0d 00 d2 0a dd f2  |.text:.3:.......|
000001e0  74 65 78 74 0d 00 dc 0c  f2 72 65 61 64 64 69 72  |text.....readdir|
000001f0  0d 00 e6 15 ff 22 44 49  52 20 4c 22 3a f2 72 65  |....."DIR L":.re|
00000200  61 64 64 69 72 0d 00 fa  17 ff 22 44 49 52 20 24  |addir....."DIR $|
00000210  2e 47 22 3a f2 72 65 61  64 64 69 72 0d 01 0e 17  |.G":.readdir....|
00000220  ff 22 44 49 52 20 24 2e  50 22 3a f2 72 65 61 64  |."DIR $.P":.read|
00000230  64 69 72 0d 01 18 17 ff  22 44 49 52 20 24 2e 53  |dir....."DIR $.S|
00000240  22 3a f2 72 65 61 64 64  69 72 0d 01 22 0c ff 22  |":.readdir..".."|
00000250  44 49 52 20 24 22 0d 01  2c 05 e1 0d 01 36 0d dd  |DIR $"..,....6..|
00000260  f2 72 65 61 64 64 69 72  0d 01 40 10 6f 73 67 62  |.readdir..@.osgb|
00000270  70 62 3d 26 46 46 44 31  0d 01 4a 10 de 20 70 61  |pb=&FFD1..J.. pa|
00000280  72 62 6c 6b 20 26 30 43  0d 01 54 11 de 20 66 69  |rblk &0C..T.. fi|
00000290  6c 65 6e 61 6d 65 20 31  30 0d 01 5e 08 41 25 3d  |lename 10..^.A%=|
000002a0  38 0d 01 68 13 58 25 3d  70 61 72 62 6c 6b 20 83  |8..h.X%=parblk .|
000002b0  26 31 30 30 0d 01 72 13  59 25 3d 70 61 72 62 6c  |&100..r.Y%=parbl|
000002c0  6b 20 81 26 31 30 30 0d  01 7c 05 20 0d 01 86 0e  |k .&100..|. ....|
000002d0  70 61 72 62 6c 6b 21 39  3d 30 0d 01 90 05 f5 0d  |parblk!9=0......|
000002e0  01 9a 16 20 70 61 72 62  6c 6b 21 31 3d 66 69 6c  |... parblk!1=fil|
000002f0  65 6e 61 6d 65 0d 01 a4  0f 20 70 61 72 62 6c 6b  |ename.... parblk|
00000300  21 35 3d 31 0d 01 ae 0c  20 d6 6f 73 67 62 70 62  |!5=1.... .osgbpb|
00000310  0d 01 b8 2b 20 e7 70 61  72 62 6c 6b 21 35 3c 3e  |...+ .parblk!5<>|
00000320  31 20 8c 20 e7 66 69 6c  65 6e 61 6d 65 3f 31 3d  |1 . .filename?1=|
00000330  97 22 2b 22 20 f2 70 72  69 6e 74 0d 01 c2 10 fd  |."+" .print.....|
00000340  20 70 61 72 62 6c 6b 21  35 3d 31 0d 01 cc 05 e1  | parblk!5=1.....|
00000350  0d 01 d6 0b dd f2 70 72  69 6e 74 0d 01 e0 0a 66  |......print....f|
00000360  6e 24 3d 22 22 0d 01 ea  09 d6 26 39 30 30 0d 01  |n$="".....&900..|
00000370  f4 14 e3 78 25 3d 31 b8  20 3f 66 69 6c 65 6e 61  |...x%=1. ?filena|
00000380  6d 65 0d 01 fe 16 66 24  3d bd 3f 28 66 69 6c 65  |me....f$=.?(file|
00000390  6e 61 6d 65 2b 78 25 29  0d 02 08 0e 66 6e 24 3d  |name+x%)....fn$=|
000003a0  66 6e 24 2b 66 24 0d 02  12 05 ed 0d 02 1c 09 ef  |fn$+f$..........|
000003b0  32 32 2c 36 0d 02 26 1c  ff 22 4c 4f 41 44 20 22  |22,6..&.."LOAD "|
000003c0  2b 66 6e 24 2b 22 20 32  36 30 30 22 2b bd 31 33  |+fn$+" 2600"+.13|
000003d0  0d 02 30 34 ef 32 32 2c  33 3a e7 50 20 ef 31 35  |..04.22,3:.P .15|
000003e0  2c 32 20 8b 20 ef 31 34  3a f1 27 22 50 52 45 53  |,2 . .14:.'"PRES|
000003f0  53 20 53 48 49 46 54 20  54 4f 20 53 43 52 4f 4c  |S SHIFT TO SCROL|
00000400  4c 22 27 27 0d 02 3a 09  d6 26 39 30 33 0d 02 3f  |L"''..:..&903..?|
00000410  2c e7 ac 20 50 20 f1 27  27 22 50 52 45 53 53 20  |,.. P .''"PRESS |
00000420  53 50 41 43 45 20 54 4f  20 43 4f 4e 54 49 4e 55  |SPACE TO CONTINU|
00000430  45 22 3a f5 fd a6 2d 39  39 0d 02 44 07 f1 27 27  |E":...-99..D..''|
00000440  0d 02 4e 06 ef 33 0d 02  58 05 e1 0d 02 62 0a dd  |..N..3..X....b..|
00000450  f2 73 77 61 70 0d ff                              |.swap..|
00000457
PRINT.m0
PRINT.m1
PRINT.m2
PRINT.m4
PRINT.m5