mirror of
https://github.com/erkyrath/infocom-zcode-terps.git
synced 2026-01-28 04:38:09 +00:00
62 lines
1.9 KiB
Plaintext
62 lines
1.9 KiB
Plaintext
<SETG ASC-CTJ <ASCII 10>>
|
|
<SETG ASC-CTM <ASCII 13>>
|
|
<SETG ASC-CTP <ASCII 16>>
|
|
<SETG ASC-TAB <ASCII 9>>
|
|
<SETG ASC-ESC <ASCII 27>>
|
|
<SETG ASC-PRN !\(>
|
|
<MANIFEST ASC-CTJ ASC-CTM ASC-CTP ASC-TAB ASC-ESC ASC-PRN>
|
|
|
|
<SETG END-READ <STRING <ASCII 27>>>
|
|
<GDECL (END-READ) STRING>
|
|
|
|
<DEFINE CVT (INFILE OUTFILE "AUX" INCH OUCH)
|
|
#DECL ((INFILE OUTFILE) STRING (INCH OUCH) <OR CHANNEL FALSE>)
|
|
<COND (<NOT <SET INCH <OPEN "READ" .INFILE>>> .INCH)
|
|
(<NOT <SET OUCH <OPEN "PRINT" .OUTFILE>>> .OUCH)
|
|
(ELSE
|
|
<REPEAT (CHR CHR1 CHR2) #DECL ((CHR CHR1 CHR2) CHARACTER)
|
|
<SET CHR <READCHR .INCH '<RETURN>>>
|
|
<COND (<==? .CHR ,ASC-CTM>
|
|
<SET CHR1 <READCHR .INCH '<RETURN>>>
|
|
<COND (<==? .CHR1 ,ASC-CTP>
|
|
<SET CHR2 <READCHR .INCH '<RETURN>>>
|
|
<PRINC ,ASC-CTM .OUCH>
|
|
<PRINC ,ASC-CTJ .OUCH>
|
|
<COND (<==? .CHR2 ,ASC-PRN>
|
|
<PRINC ,ASC-TAB .OUCH>)
|
|
(ELSE <PRINC .CHR2 .OUCH>)>)
|
|
(ELSE
|
|
<PRINC .CHR .OUCH>
|
|
<PRINC .CHR1 .OUCH>)>)
|
|
(ELSE <PRINC .CHR .OUCH>)>>
|
|
<CLOSE .INCH>
|
|
<CLOSE .OUCH>)>>
|
|
|
|
<DEFINE INIT-CVT ("AUX" INLNT OUTLNT INFILE OUTFILE
|
|
(INCHAN .INCHAN) (OUTCHAN .OUTCHAN))
|
|
#DECL ((INLNT OUTLNT) FIX (INFILE OUTFILE) STRING
|
|
(INCHAN OUTCHAN) CHANNEL)
|
|
<REPEAT ()
|
|
<READCHR .INCHAN>
|
|
<PRINC "Input File: " .OUTCHAN>
|
|
<SET INLNT
|
|
<READSTRING <SET INFILE <ISTRING 30>> .INCHAN ,END-READ>>
|
|
<COND (<0? .INLNT> <QUIT>)
|
|
(ELSE <SET INFILE <SUBSTRUC .INFILE 0 .INLNT>>)>
|
|
<PRINC !\[ .OUTCHAN>
|
|
<PRINC .INFILE .OUTCHAN>
|
|
<PRINC !\] .OUTCHAN>
|
|
<CRLF .OUTCHAN>
|
|
<PRINC "Output File: " .OUTCHAN>
|
|
<SET OUTLNT
|
|
<READSTRING <SET OUTFILE <ISTRING 30>> .INCHAN ,END-READ>>
|
|
<COND (<0? .OUTLNT> <SET OUTFILE .INFILE>)
|
|
(ELSE <SET OUTFILE <SUBSTRUC .OUTFILE 0 .OUTLNT>>)>
|
|
<PRINC !\[ .OUTCHAN>
|
|
<PRINC .OUTFILE .OUTCHAN>
|
|
<PRINC !\] .OUTCHAN>
|
|
<CRLF .OUTCHAN>
|
|
<CVT .INFILE .OUTFILE>>>
|
|
|
|
<OR <LOOKUP "COMPILE" <ROOT>> <INIT-CVT>>
|