mirror of
https://github.com/elliotnunn/supermario.git
synced 2024-11-26 01:49:19 +00:00
136 lines
3.0 KiB
Plaintext
136 lines
3.0 KiB
Plaintext
#
|
||
# d32trans - options processing, running d32cpp
|
||
#
|
||
Set Exit 0
|
||
Set CaseSensitive 0
|
||
#
|
||
Set TransOptions ""
|
||
Set CppOptions ""
|
||
set ErrlogFile Dev:StdErr
|
||
set TempDir "{DSP3210_Temp}"
|
||
Set progress 0
|
||
Set RunCpp 1
|
||
|
||
If "{DSP3210_AsmPP}" == ""
|
||
set DSP3210_AsmPP "d32cpp"
|
||
End
|
||
|
||
Loop
|
||
Break If {#} == 0
|
||
If "{1}" =~ /-p/
|
||
set TransOptions "{TransOptions} -p"
|
||
Set progress 1
|
||
shift 1
|
||
continue
|
||
Else If "{1}" =~ /-a/
|
||
set RunCpp 0
|
||
shift 1
|
||
continue
|
||
Else If "{1}" =~ /-e/ || "{1}" =~ /-errlog/
|
||
set ErrlogFile "{2}"
|
||
shift 2
|
||
continue
|
||
Else If "{1}" =~ /-c/
|
||
set TransOptions "{TransOptions} -c"
|
||
shift 1
|
||
continue
|
||
Else If "{1}" =~ /-w/
|
||
set TransOptions "{TransOptions} -w"
|
||
shift 1
|
||
continue
|
||
Else If "{1}" =~ /-y/
|
||
set TransOptions "{TransOptions} {1} '{2}'"
|
||
If "{1}" !~ /≈:∞/
|
||
Set TempDir "{1}:"
|
||
Else
|
||
Set TempDir "{1}"
|
||
End
|
||
shift 2
|
||
continue
|
||
Else If "{1}" =~ /-d/ || "{1}" =~ /-define/
|
||
Set defines "{2}"
|
||
Loop
|
||
Break If "{defines}" !~ /([¬,]*)®1,[ ∂t]*(≈)®2/
|
||
Set CppOptions "{CppOptions} -D'{®1}'"
|
||
Set defines "{®2}"
|
||
End
|
||
Set CppOptions "{CppOptions} -D'{defines}'"
|
||
shift 2
|
||
continue
|
||
Else If "{1}" =~ /-u/ || "{1}" =~ /-undef/
|
||
Set undefines "{2}"
|
||
Loop
|
||
Break If "{undefines}" !~ /([¬,]*)®1,[ ∂t]*(≈)®2/
|
||
Set CppOptions "{CppOptions} -U'{®1}'"
|
||
Set undefines "{®2}"
|
||
End
|
||
Set CppOptions "{CppOptions} -U'{undefines}'"
|
||
shift 2
|
||
continue
|
||
Else If "{1}" =~ /-i/ || "{1}" =~ /-include/
|
||
Set includes "{2}"
|
||
Loop
|
||
Break If "{includes}" !~ /([¬,]*)®1,[ ∂t]*(≈)®2/
|
||
Set CppOptions "{CppOptions} -I'{®1}'"
|
||
Set includes "{®2}"
|
||
End
|
||
Set CppOptions "{CppOptions} -I'{includes}'"
|
||
shift 2
|
||
continue
|
||
Else If "{1}" =~ /-use/
|
||
d32trans_mac -use
|
||
exit 0
|
||
Else If "{1}" =~ /-≈/
|
||
echo "{0}: Illegal option. Usage:" >Dev:StdErr
|
||
d32trans_mac -use
|
||
exit 1
|
||
Else if "{infilename}" == ""
|
||
set infilename "{1}"
|
||
shift 1
|
||
continue
|
||
Else If "{outfilename}" == ""
|
||
set outfilename "{1}"
|
||
shift 1
|
||
continue
|
||
Else
|
||
echo "{0}: too many filename arguments" > Dev:StdErr
|
||
d32trans_mac -use
|
||
exit 1
|
||
End
|
||
End
|
||
|
||
If "{infilename}" == ""
|
||
set infilename Dev:StdIn
|
||
set outfilename Dev:StdOut
|
||
Else If "{outfilename}" == ""
|
||
set outfilename "{infilename}.cvt"
|
||
End
|
||
|
||
If {RunCpp}
|
||
If {progress}
|
||
Echo "{DSP3210_AsmPP}{CppOptions} {infilename} > {TempDir}'d32trans.tmp' ≥ {ErrlogFile}"
|
||
End
|
||
{DSP3210_AsmPP} {CppOptions} {infilename} > {TempDir}'d32trans.tmp' ≥ {ErrlogFile}
|
||
If {Status} > 0
|
||
exit 1
|
||
End
|
||
if {progress}
|
||
Echo "d32trans_mac {TransOptions} {TempDir}'d32trans.tmp' {outfilename} ≥≥ {ErrlogFile}"
|
||
End
|
||
d32trans_mac {TransOptions} {TempDir}'d32trans.tmp' {outfilename} ≥≥ {ErrlogFile}
|
||
Set stat {Status}
|
||
If {progress}
|
||
echo "Delete {TempDir}'d32trans.tmp' ≥≥ {ErrlogFile}"
|
||
End
|
||
Delete {TempDir}'d32trans.tmp' ≥≥ {ErrlogFile}
|
||
Exit {stat}
|
||
Else
|
||
if {progress}
|
||
Echo "d32trans_mac {TransOptions} {infilename} {outfilename} ≥≥ {ErrlogFile}"
|
||
End
|
||
d32trans_mac {TransOptions} {infilename} {outfilename} ≥≥ {ErrlogFile}
|
||
Exit {Status}
|
||
End
|
||
Exit 0
|
||
|