DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 4832 (0x12e0) Types: TextFile Names: »INPARAMS.P«
└─⟦b8af24a88⟧ Bits:30005796 CR80 Disc Pack ( MINICAMPS ) └─ ⟦this⟧ »GENS.D!SWELLLIB.D!INPARAMS.P«
======== INPARAMS.S 00.00001 00.00002 submodule inparams; 00.00003 00.00004 00.00005 %SOURCE ======== GENERALPARAMS.S ======== INPARAMS.S 00.00005 00.00006 %SOURCE ======== MONITORNAMES.S ======== INPARAMS.S 00.00006 00.00007 %SOURCE ======== IOSPARAMS.S ======== INPARAMS.S 00.00007 00.00008 %SOURCE ======== UTH.I ======== INPARAMS.S 00.00008 00.00009 00.00010 00.00011 export var 00.00012 ifiletype: filetype; "input file descr 00.00013 ofiletype: filetype; "output file descr 00.00014 00.00015 00.00016 export procedure readparams(r6); "all registers destroyed 00.00017 "============================" 00.00018 " read the second line of the parameter file 00.00019 var 00.00020 link: integer; 00.00021 i_open, o_open: boolean; 00.00022 init 00.00023 i_open= false; 00.00024 o_open= false; 00.00025 00.00026 const 00.00027 namelistmax= 10; 00.00028 const 00.00029 kwsize= 1; "in words" 00.00030 type 00.00031 keywords= (k_error, 00.00032 k_i, 00.00033 k_o, 00.00034 k_top); 00.00035 00.00036 var 00.00037 keyword: array [0..k_top*kwsize-1] of integer; 00.00038 keywordindex: keywords; 00.00039 nameno: integer; 00.00040 fromadam: integer; 00.00041 fsn: file_system_name; 00.00042 vol: volume_name; 00.00043 namelist: array [0..size(file_name)*namelistmax-1] of integer; 00.00044 workarea: array [0..15] of integer; 00.00045 00.00046 init 00.00047 keyword[k_i *kwsize..(k_i +1)*kwsize-1]= 'I'; 00.00048 keyword[k_o *kwsize..(k_o +1)*kwsize-1]= 'O'; 00.00049 00.00050 begin 00.00051 r6=> link; 00.00052 00.00053 address(pfiletype)=> r4; 00.00054 00.00055 repeat 00.00056 readkeyword(kwsize,1,k_top,r0,address(keyword)=>r4,r6); 00.00057 r0=> keywordindex; 00.00058 00.00059 pfiletype.s=> r4; 00.00060 case r0:keywords of 00.00061 k_error: 00.00062 fileerror(address(pfiletype)=>r4, address('illegal keyword(:0:)')=>r5, 0=>r7, r6); 00.00063 k_i, k_o: 00.00064 begin " read file id " 00.00065 address(default_fsn)=> r6; 00.00066 address(fsn)=> r7; 00.00067 movm(size(file_system_name), r6@file_system_name, r7@file_system_name); 00.00068 address(default_vol)=> r6; 00.00069 address(vol)=> r7; 00.00070 movm(size(volume_name), r6@volume_name, r7@volume_name); 00.00071 switch mon(infileid, address(fsn)=>r0, address(vol)=>r1, r2, r3, r4, address(namelist)=>r5, 00.00072 address(workarea)=>r6, r7): infileid_exits to 00.00073 if_error: 00.00074 fileerror(address(pfiletype)=>r4, address('infileid(:0:)')=>r5, r7, r6); 00.00075 if_syntax: 00.00076 fileerror(address(pfiletype)=>r4, address('fileid syntax(:0:)')=>r5, r7, r6); 00.00077 end; 00.00078 r2=> nameno; 00.00079 r3=> fromadam; 00.00080 end; 00.00081 end; 00.00082 00.00083 keywordindex=> r6; 00.00084 case r6:keywords of 00.00085 k_i: 00.00086 if i_open =>r6 = false then 00.00087 begin 00.00088 openfile(address(ifiletype)=>r4, address(fsn)=>r0, address(vol)=>r1, nameno=>r2, 00.00089 fromadam=>r3, address(namelist)=>r5, dfiletype.f=>r7, r6); 00.00090 openstream(r4, input_mode=>r3, r6); 00.00091 true =>r6 =>i_open; 00.00092 end; 00.00093 k_o: 00.00094 if o_open =>r6 = false then 00.00095 begin 00.00096 openfile(address(ofiletype)=>r4, address(fsn)=>r0, address(vol)=>r1, nameno=>r2, 00.00097 fromadam=>r3, address(namelist)=>r5, dfiletype.f=>r7, r6); 00.00098 switch mon(io,reset,ofiletype.f=>r4,r7): error_done to 00.00099 err: 00.00100 fileerror(address(ofiletype)=>r4, 00.00101 address('reset output(:0:)')=>r5,r7,r6); 00.00102 end; 00.00103 openstream(address(ofiletype)=>r4, output_mode=>r3, r6); 00.00104 true =>r6 =>o_open; 00.00105 end; 00.00106 end; 00.00107 until keywordindex=>r0 = k_top; 00.00108 00.00109 if i_open =>r6 = false then 00.00110 begin 00.00111 movm(size(filetype), 00.00112 (address(cinfiletype)=>r0)@filetype, 00.00113 (address(ifiletype)=>r1)@filetype); 00.00114 openstream(address(ifiletype) =>r4, input_mode =>r3, r6); 00.00115 end; 00.00116 if o_open =>r6 = false then 00.00117 movm(size(filetype), 00.00118 (address(coutfiletype)=>r0)@filetype, 00.00119 (address(ofiletype)=>r1)@filetype); 00.00120 00.00121 exit(link); 00.00122 end "readparams"; 00.00123 00.00124 endmodule LINES: 917 CODESIZE VARSIZE CONSTSIZE TEMPSIZE -------- ------- --------- -------- #00B4 #008B #001B #0000 «a5»