Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_34.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_34.ADF
Filename: PRINT
Read OK:
File size: 047F 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("SsPp",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
  180REM PRINT''"Do you want perforation skip? (Y/N)":REPEAT:a%=INSTR("YyNn",GET$):UNTILa%
  190REM IFa%<3 ?skip=-1 ELSE ?skip=0
  191?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%=�"SsPp",�):�a%
P	�22,3
Z�a%<3 �screen � �printer
n�''"PRESS SPACE FOR MENU"
x
���-99
��"MENU"
��
���screen:P=�
��text:�
���printer:P=�
�W� PRINT''"Do you want perforation skip? (Y/N)":REPEAT:a%=INSTR("YyNn",GET$):UNTILa%
�"� IFa%<3 ?skip=-1 ELSE ?skip=0
�?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  50 70 22 2c be 29 3a fd  |:a%=."SsPp",.):.|
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 57 f4 20  |rinter:P=....W. |
00000170  50 52 49 4e 54 27 27 22  44 6f 20 79 6f 75 20 77  |PRINT''"Do you w|
00000180  61 6e 74 20 70 65 72 66  6f 72 61 74 69 6f 6e 20  |ant perforation |
00000190  73 6b 69 70 3f 20 28 59  2f 4e 29 22 3a 52 45 50  |skip? (Y/N)":REP|
000001a0  45 41 54 3a 61 25 3d 49  4e 53 54 52 28 22 59 79  |EAT:a%=INSTR("Yy|
000001b0  4e 6e 22 2c 47 45 54 24  29 3a 55 4e 54 49 4c 61  |Nn",GET$):UNTILa|
000001c0  25 0d 00 be 22 f4 20 49  46 61 25 3c 33 20 3f 73  |%...". IFa%<3 ?s|
000001d0  6b 69 70 3d 2d 31 20 45  4c 53 45 20 3f 73 6b 69  |kip=-1 ELSE ?ski|
000001e0  70 3d 30 0d 00 bf 0b 3f  73 6b 69 70 3d 30 0d 00  |p=0....?skip=0..|
000001f0  c8 14 ef 31 35 2c 32 3a  f2 74 65 78 74 3a ef 33  |...15,2:.text:.3|
00000200  3a e1 0d 00 d2 0a dd f2  74 65 78 74 0d 00 dc 0c  |:.......text....|
00000210  f2 72 65 61 64 64 69 72  0d 00 e6 15 ff 22 44 49  |.readdir....."DI|
00000220  52 20 4c 22 3a f2 72 65  61 64 64 69 72 0d 00 fa  |R L":.readdir...|
00000230  17 ff 22 44 49 52 20 24  2e 47 22 3a f2 72 65 61  |.."DIR $.G":.rea|
00000240  64 64 69 72 0d 01 0e 17  ff 22 44 49 52 20 24 2e  |ddir....."DIR $.|
00000250  50 22 3a f2 72 65 61 64  64 69 72 0d 01 18 17 ff  |P":.readdir.....|
00000260  22 44 49 52 20 24 2e 53  22 3a f2 72 65 61 64 64  |"DIR $.S":.readd|
00000270  69 72 0d 01 22 0c ff 22  44 49 52 20 24 22 0d 01  |ir..".."DIR $"..|
00000280  2c 05 e1 0d 01 36 0d dd  f2 72 65 61 64 64 69 72  |,....6...readdir|
00000290  0d 01 40 10 6f 73 67 62  70 62 3d 26 46 46 44 31  |..@.osgbpb=&FFD1|
000002a0  0d 01 4a 10 de 20 70 61  72 62 6c 6b 20 26 30 43  |..J.. parblk &0C|
000002b0  0d 01 54 11 de 20 66 69  6c 65 6e 61 6d 65 20 31  |..T.. filename 1|
000002c0  30 0d 01 5e 08 41 25 3d  38 0d 01 68 13 58 25 3d  |0..^.A%=8..h.X%=|
000002d0  70 61 72 62 6c 6b 20 83  26 31 30 30 0d 01 72 13  |parblk .&100..r.|
000002e0  59 25 3d 70 61 72 62 6c  6b 20 81 26 31 30 30 0d  |Y%=parblk .&100.|
000002f0  01 7c 05 20 0d 01 86 0e  70 61 72 62 6c 6b 21 39  |.|. ....parblk!9|
00000300  3d 30 0d 01 90 05 f5 0d  01 9a 16 20 70 61 72 62  |=0......... parb|
00000310  6c 6b 21 31 3d 66 69 6c  65 6e 61 6d 65 0d 01 a4  |lk!1=filename...|
00000320  0f 20 70 61 72 62 6c 6b  21 35 3d 31 0d 01 ae 0c  |. parblk!5=1....|
00000330  20 d6 6f 73 67 62 70 62  0d 01 b8 2b 20 e7 70 61  | .osgbpb...+ .pa|
00000340  72 62 6c 6b 21 35 3c 3e  31 20 8c 20 e7 66 69 6c  |rblk!5<>1 . .fil|
00000350  65 6e 61 6d 65 3f 31 3d  97 22 2b 22 20 f2 70 72  |ename?1=."+" .pr|
00000360  69 6e 74 0d 01 c2 10 fd  20 70 61 72 62 6c 6b 21  |int..... parblk!|
00000370  35 3d 31 0d 01 cc 05 e1  0d 01 d6 0b dd f2 70 72  |5=1...........pr|
00000380  69 6e 74 0d 01 e0 0a 66  6e 24 3d 22 22 0d 01 ea  |int....fn$=""...|
00000390  09 d6 26 39 30 30 0d 01  f4 14 e3 78 25 3d 31 b8  |..&900.....x%=1.|
000003a0  20 3f 66 69 6c 65 6e 61  6d 65 0d 01 fe 16 66 24  | ?filename....f$|
000003b0  3d bd 3f 28 66 69 6c 65  6e 61 6d 65 2b 78 25 29  |=.?(filename+x%)|
000003c0  0d 02 08 0e 66 6e 24 3d  66 6e 24 2b 66 24 0d 02  |....fn$=fn$+f$..|
000003d0  12 05 ed 0d 02 1c 09 ef  32 32 2c 36 0d 02 26 1c  |........22,6..&.|
000003e0  ff 22 4c 4f 41 44 20 22  2b 66 6e 24 2b 22 20 32  |."LOAD "+fn$+" 2|
000003f0  36 30 30 22 2b bd 31 33  0d 02 30 34 ef 32 32 2c  |600"+.13..04.22,|
00000400  33 3a e7 50 20 ef 31 35  2c 32 20 8b 20 ef 31 34  |3:.P .15,2 . .14|
00000410  3a f1 27 22 50 52 45 53  53 20 53 48 49 46 54 20  |:.'"PRESS SHIFT |
00000420  54 4f 20 53 43 52 4f 4c  4c 22 27 27 0d 02 3a 09  |TO SCROLL"''..:.|
00000430  d6 26 39 30 33 0d 02 3f  2c e7 ac 20 50 20 f1 27  |.&903..?,.. P .'|
00000440  27 22 50 52 45 53 53 20  53 50 41 43 45 20 54 4f  |'"PRESS SPACE TO|
00000450  20 43 4f 4e 54 49 4e 55  45 22 3a f5 fd a6 2d 39  | CONTINUE":...-9|
00000460  39 0d 02 44 07 f1 27 27  0d 02 4e 06 ef 33 0d 02  |9..D..''..N..3..|
00000470  58 05 e1 0d 02 62 0a dd  f2 73 77 61 70 0d ff     |X....b...swap..|
0000047f
PRINT.m0
PRINT.m1
PRINT.m2
PRINT.m4
PRINT.m5