diff --git a/makefile b/makefile index 4f9daf55..d32f5fa2 100644 --- a/makefile +++ b/makefile @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.darwin.clang.x86_64 b/makefile.darwin.clang.x86_64 index 99a51914..8b167dc1 100644 --- a/makefile.darwin.clang.x86_64 +++ b/makefile.darwin.clang.x86_64 @@ -79,12 +79,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -97,21 +99,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -128,6 +130,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -252,7 +255,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.clang.powerpc b/makefile.linux.clang.powerpc index f88e9fbe..b50647bd 100644 --- a/makefile.linux.clang.powerpc +++ b/makefile.linux.clang.powerpc @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.clang.x86_64 b/makefile.linux.clang.x86_64 index 9ba508eb..bdc31016 100644 --- a/makefile.linux.clang.x86_64 +++ b/makefile.linux.clang.x86_64 @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.gcc.armv6j b/makefile.linux.gcc.armv6j index 71e789b6..80c0d1c4 100644 --- a/makefile.linux.gcc.armv6j +++ b/makefile.linux.gcc.armv6j @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.gcc.armv6j_hardfp b/makefile.linux.gcc.armv6j_hardfp index a97b071c..659b7ba1 100644 --- a/makefile.linux.gcc.armv6j_hardfp +++ b/makefile.linux.gcc.armv6j_hardfp @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.gcc.armv7a_hardfp b/makefile.linux.gcc.armv7a_hardfp index 1ddd970d..6dd60472 100644 --- a/makefile.linux.gcc.armv7a_hardfp +++ b/makefile.linux.gcc.armv7a_hardfp @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.gcc.powerpc b/makefile.linux.gcc.powerpc index 7912ede2..cb7858b0 100644 --- a/makefile.linux.gcc.powerpc +++ b/makefile.linux.gcc.powerpc @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.gcc.x86 b/makefile.linux.gcc.x86 index ab43576c..ce6d7cee 100644 --- a/makefile.linux.gcc.x86 +++ b/makefile.linux.gcc.x86 @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/makefile.linux.gcc.x86_64 b/makefile.linux.gcc.x86_64 index 4f9daf55..d32f5fa2 100644 --- a/makefile.linux.gcc.x86_64 +++ b/makefile.linux.gcc.x86_64 @@ -78,12 +78,14 @@ stage3: $(VOCSTATIC0) -sPS Args.Mod Console.Mod Unix.Mod sed -i.tmp "s#/opt#$(PRF)#g" src/voc/prf.Mod $(VOCSTATIC0) -sPS prf.Mod - $(VOCSTATIC0) -sPS oocOakStrings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod + $(VOCSTATIC0) -sPS Strings.Mod architecture.Mod version.Mod Kernel0.Mod Modules.Mod $(VOCSTATIC0) -sxPS Files0.Mod - $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod errors.Mod + $(VOCSTATIC0) -sPS Reals.Mod Texts0.Mod + $(VOCSTATIC0) -sPS vt100.Mod # build the compiler stage4: + $(VOCSTATIC0) -sPS errors.Mod $(VOCSTATIC0) -sPS extTools.Mod $(VOCSTATIC0) -sPS OPM.cmdln.Mod $(VOCSTATIC0) -sxPS OPS.Mod @@ -96,21 +98,21 @@ stage4: #this is a way to create a bootstrap binary. stage5: $(CC) SYSTEM.c Args.c Console.c Modules.c Unix.c \ - oocOakStrings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c \ + Strings.c architecture.c prf.c version.c Kernel0.c Files0.c Reals.c Texts0.c vt100.c \ extTools.c \ OPM.c OPS.c OPT.c OPC.c OPV.c OPB.c OPP.c errors.c $(CL) -static voc.c -o voc \ SYSTEM.o Args.o Console.o Modules.o Unix.o \ - oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ extTools.o \ OPM.o OPS.o OPT.o OPC.o OPV.o OPB.o OPP.o errors.o $(CL) BrowserCmd.c -o showdef \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o \ + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o vt100.o \ OPM.o OPS.o OPT.o OPV.o OPC.o errors.o $(CL) OCatCmd.c -o ocat \ - SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o + SYSTEM.o Args.o Console.o Modules.o Unix.o Strings.o architecture.o prf.o version.o Kernel0.o Files0.o Reals.o Texts0.o # build all library files stage6: @@ -127,6 +129,7 @@ stage6: $(VOCSTATIC) -sP oocAscii.Mod $(VOCSTATIC) -sP oocStrings.Mod $(VOCSTATIC) -sP oocStrings2.Mod + $(VOCSTATIC) -sP oocOakStrings.Mod $(VOCSTATIC) -sP oocCharClass.Mod $(VOCSTATIC) -sP oocConvTypes.Mod $(VOCSTATIC) -sP oocIntConv.Mod @@ -250,7 +253,7 @@ stage6: # $(VOCSTATIC0) -sPS compatIn.Mod # $(VOCSTATIC0) -smPS vmake.Mod # $(CC) compatIn.c -# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o oocIntStr.o oocConvTypes.o oocIntConv.o +# $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o Texts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o Strings.o oocIntStr.o oocConvTypes.o oocIntConv.o diff --git a/ocat b/ocat index 0f61f8f2..7956c82e 100755 Binary files a/ocat and b/ocat differ diff --git a/showdef.REMOVED.git-id b/showdef.REMOVED.git-id index 4d8f93d1..cba99915 100644 --- a/showdef.REMOVED.git-id +++ b/showdef.REMOVED.git-id @@ -1 +1 @@ -001ab0162d79fe0a1e444b48e300d4cfdf96658d \ No newline at end of file +4c582e1f07e70f4adecd0dd18f58e8f9ac229eb2 \ No newline at end of file diff --git a/src/lib/misc/crt.Mod b/src/lib/misc/crt.Mod new file mode 100644 index 00000000..3fd63b47 --- /dev/null +++ b/src/lib/misc/crt.Mod @@ -0,0 +1,187 @@ +MODULE crt; + +IMPORT vt100, Unix, Console, + Strings; (* strings to remove later ? *) + +CONST + +(* Foreground and background color constants *) + Black* = 0; + Blue* = 1; + Green* = 2; + Cyan* = 3; + Red* = 4; + Magenta* = 5; + Brown* = 6; + LightGray* = 7; + +(* Foreground color constants *) + DarkGray* = 8; + LightBlue* = 9; + LightGreen* = 10; + LightCyan* = 11; + LightRed* = 12; + LightMagenta* = 13; + Yellow* = 14; + White* = 15; + +(* Add-in for blinking *) + Blink* = 128; + +TYPE + PFdSet = POINTER TO Unix.FdSet; + +VAR tmpstr : ARRAY 23 OF CHAR; + + PROCEDURE EraseDisplay*; + BEGIN + vt100.ED(2); + END EraseDisplay; + + PROCEDURE ClrScr*; + BEGIN + vt100.ED(2); + END ClrScr; + + PROCEDURE ClrEol*; + BEGIN + vt100.EL(0); + END ClrEol; + + PROCEDURE cursoroff*; + BEGIN + vt100.DECTCEMl; + END cursoroff; + + PROCEDURE cursoron*; + BEGIN + vt100.DECTCEMh; + END cursoron; + + PROCEDURE Delay*( ms : INTEGER); + VAR i : LONGINT; + tv : Unix.Timeval; + pfd : PFdSet; + BEGIN + tv.sec := 0; + tv.usec := ms * 1000; + pfd := NIL; + i := Unix.Select(0, pfd^, pfd^, pfd^, tv); + END Delay; + + PROCEDURE GotoXY* (x, y: INTEGER); + BEGIN + vt100.CUP (y, x); + END GotoXY; + + PROCEDURE HighVideo*; + VAR tmpstr: ARRAY 5 OF CHAR; + BEGIN + COPY (vt100.CSI, tmpstr); + Strings.Append(vt100.Bold, tmpstr); + Console.String(tmpstr); + END HighVideo; + + PROCEDURE DelLine*; + BEGIN + vt100.EL(2); + END DelLine; + + PROCEDURE InsLine*; + BEGIN + vt100.SCP; + Console.Ln; + vt100.RCP; + END InsLine; + + PROCEDURE LowVideo*; + VAR tmpstr : ARRAY 7 OF CHAR; + BEGIN + COPY (vt100.CSI, tmpstr); + Strings.Append(vt100.ResetBold, tmpstr); + Console.String(tmpstr); + END LowVideo; + + PROCEDURE NormVideo*; + VAR tmpstr : ARRAY 7 OF CHAR; + BEGIN + COPY(vt100.CSI, tmpstr); + Strings.Append(vt100.ResetAll, tmpstr); + Console.String(tmpstr); + END NormVideo; + + PROCEDURE TextBackground*(color : SHORTINT); + BEGIN + IF color = Black THEN + vt100.SetAttr(vt100.BBlack) + ELSIF color = Blue THEN + vt100.SetAttr(vt100.BBlue) + ELSIF color = Green THEN + vt100.SetAttr(vt100.BGreen) + ELSIF color = Cyan THEN + vt100.SetAttr(vt100.BCyan) + ELSIF color = Red THEN + vt100.SetAttr(vt100.BRed) + ELSIF color = Magenta THEN + vt100.SetAttr(vt100.BMagenta) + ELSIF color = Brown THEN + vt100.SetAttr(vt100.BYellow) + ELSIF color = LightGray THEN + vt100.SetAttr(vt100.BLightGray) + ELSIF color = DarkGray THEN + vt100.SetAttr(vt100.BDarkGray) + ELSIF color = LightBlue THEN + vt100.SetAttr(vt100.BLightBlue) + ELSIF color = LightGreen THEN + vt100.SetAttr(vt100.BLightBlue) + ELSIF color = LightCyan THEN + vt100.SetAttr(vt100.BLightCyan) + ELSIF color = LightRed THEN + vt100.SetAttr(vt100.BLightRed) + ELSIF color = LightMagenta THEN + vt100.SetAttr(vt100.BLightMagenta) + ELSIF color = Yellow THEN + vt100.SetAttr(vt100.BLightYellow) + ELSIF color = White THEN + vt100.SetAttr(vt100.BWhite) + END; + END TextBackground; + + PROCEDURE TextColor*(color : SHORTINT); + BEGIN + IF color = Black THEN + vt100.SetAttr(vt100.Black) + ELSIF color = Blue THEN + vt100.SetAttr(vt100.Blue) + ELSIF color = Green THEN + vt100.SetAttr(vt100.Green) + ELSIF color = Cyan THEN + vt100.SetAttr(vt100.Cyan) + ELSIF color = Red THEN + vt100.SetAttr(vt100.Red) + ELSIF color = Magenta THEN + vt100.SetAttr(vt100.Magenta) + ELSIF color = Brown THEN + vt100.SetAttr(vt100.Yellow) + ELSIF color = LightGray THEN + vt100.SetAttr(vt100.LightGray) + ELSIF color = DarkGray THEN + vt100.SetAttr(vt100.DarkGray) + ELSIF color = LightBlue THEN + vt100.SetAttr(vt100.LightBlue) + ELSIF color = LightGreen THEN + vt100.SetAttr(vt100.LightBlue) + ELSIF color = LightCyan THEN + vt100.SetAttr(vt100.LightCyan) + ELSIF color = LightRed THEN + vt100.SetAttr(vt100.LightRed) + ELSIF color = LightMagenta THEN + vt100.SetAttr(vt100.LightMagenta) + ELSIF color = Yellow THEN + vt100.SetAttr(vt100.LightYellow) + ELSIF color = White THEN + vt100.SetAttr(vt100.White) + END; + END TextColor; + +END crt. diff --git a/src/lib/misc/vt100.Mod b/src/lib/misc/vt100.Mod new file mode 100644 index 00000000..37ab5895 --- /dev/null +++ b/src/lib/misc/vt100.Mod @@ -0,0 +1,342 @@ +MODULE vt100; + +IMPORT Console, Strings; + (* reference http://en.wikipedia.org/wiki/ANSI_escape_code + & http://misc.flogisoft.com/bash/tip_colors_and_formatting + *) +CONST + + Escape* = 1BX; + SynchronousIdle* = 16X; + LeftCrotchet* = '['; + + (* formatting *) + Bold* = "1m"; + Dim* = "2m"; + Underlined* = "4m"; + Blink* = "5m"; (* does not work with most emulators, works in tty and xterm *) + Reverse* = "7m"; (* invert the foreground and background colors *) + Hidden* = "8m"; (* useful for passwords *) + + (* reset *) + ResetAll* = "0m"; + ResetBold* = "21m"; + ResetDim* = "22m"; + ResetUnderlined* = "24m"; + ResetBlink* = "25m"; + ResetReverse* = "27m"; + ResetHidden* = "28m"; + + (* foreground colors *) + Black* = "30m"; + Red* = "31m"; + Green* = "32m"; + Yellow* = "33m"; + Blue* = "34m"; + Magenta* = "35m"; + Cyan* = "36m"; + LightGray* = "37m"; + Default* = "39m"; + DarkGray* = "90m"; + LightRed* = "91m"; + LightGreen* = "92m"; + LightYellow* = "93m"; + LightBlue* = "94m"; + LightMagenta* = "95m"; + LightCyan* = "96m"; + White* = "97m"; + + (* background colors *) + BBlack* = "40m"; + BRed* = "41m"; + BGreen* = "42m"; + BYellow* = "43m"; + BBlue* = "44m"; + BMagenta* = "45m"; + BCyan* = "46m"; + BLightGray* = "47m"; + BDefault* = "49m"; + BDarkGray* = "100m"; + BLightRed* = "101m"; + BLightGreen* = "102m"; + BLightYellow* = "103m"; + BLightBlue* = "104m"; + BLightMagenta*= "105m"; + BLightCyan* = "106m"; + BWhite* = "107m"; + + VAR + CSI* : ARRAY 5 OF CHAR; + tmpstr : ARRAY 32 OF CHAR; + + (* IntToStr routine taken from + https://github.com/romiras/Oberon-F-components/blob/master/Ott/Mod/IntStr.cp + and modified to work on 64bit system, + in order to avoid using oocIntStr, which has many dependencies *) + PROCEDURE Reverse0 (VAR str : ARRAY OF CHAR; start, end : INTEGER); + (* Reverses order of characters in the interval [start..end]. *) + VAR + h : CHAR; + BEGIN + WHILE start < end DO + h := str[start]; str[start] := str[end]; str[end] := h; + INC(start); DEC(end) + END + END Reverse0; + + PROCEDURE IntToStr*(int: LONGINT; VAR str: ARRAY OF CHAR); + (* Converts the value of `int' to string form and copies the possibly truncated + result to `str'. *) + VAR + b : ARRAY 21 OF CHAR; + s, e: INTEGER; + maxLength : SHORTINT; (* maximum number of digits representing a LONGINT value *) + BEGIN + IF SIZE(LONGINT) = 4 THEN maxLength := 11 END; + IF SIZE(LONGINT) = 8 THEN maxLength := 20 END; + (* build representation in string 'b' *) + IF int = MIN(LONGINT) THEN (* smallest LONGINT, -int is an overflow *) + IF SIZE(LONGINT) = 4 THEN + b := "-2147483648"; + e := 11 + ELSE (* SIZE(LONGINT) = 8 *) + b := "-9223372036854775808"; + e := 20 + END + ELSE + IF int < 0 THEN (* negative sign *) + b[0] := "-"; int := -int; s := 1 + ELSE (* no sign *) + s := 0 + END; + e := s; (* 's' holds starting position of string *) + REPEAT + b[e] := CHR(int MOD 10+ORD("0")); + int := int DIV 10; + INC(e) + UNTIL int = 0; + b[e] := 0X; + Reverse0(b, s, e-1); + END; + COPY(b, str) (* truncate output if necessary *) + END IntToStr; + + PROCEDURE EscSeq0 (letter : ARRAY OF CHAR); + VAR + cmd : ARRAY 9 OF CHAR; + BEGIN + COPY(CSI, cmd); + Strings.Append (letter, cmd); + Console.String (cmd); + END EscSeq0; + + PROCEDURE EscSeq (n : INTEGER; letter : ARRAY OF CHAR); + VAR nstr : ARRAY 2 OF CHAR; + cmd : ARRAY 7 OF CHAR; + BEGIN + IntToStr (n, nstr); + COPY(CSI, cmd); + Strings.Append (nstr, cmd); + Strings.Append (letter, cmd); + Console.String (cmd); + END EscSeq; + + PROCEDURE EscSeqSwapped (n : INTEGER; letter : ARRAY OF CHAR); + VAR nstr : ARRAY 2 OF CHAR; + cmd : ARRAY 7 OF CHAR; + BEGIN + IntToStr (n, nstr); + COPY(CSI, cmd); + Strings.Append (letter, cmd); + Strings.Append (nstr, cmd); + Console.String (cmd); + END EscSeqSwapped; + + PROCEDURE EscSeq2(n, m : INTEGER; letter : ARRAY OF CHAR); + VAR nstr, mstr : ARRAY 5 OF CHAR; + cmd : ARRAY 12 OF CHAR; + BEGIN + IntToStr(n, nstr); + IntToStr(m, mstr); + + COPY (CSI, cmd); + Strings.Append (nstr, cmd); + Strings.Append (';', cmd); + Strings.Append (mstr, cmd); + Strings.Append (letter, cmd); + Console.String (cmd); + + END EscSeq2; + + + +(* Cursor up + moves cursor n cells in the given direction. if the cursor is already at the edge of the screen, this has no effect *) + + PROCEDURE CUU*(n : INTEGER); + BEGIN + EscSeq (n, 'A'); + END CUU; + +(* Cursor down + moves cursor n cells in the given direction. if the cursor is already at the edge of the screen, this has no effect *) + + PROCEDURE CUD*(n : INTEGER); + BEGIN + EscSeq (n, 'B'); + END CUD; + + +(* Cursor forward + moves cursor n cells in the given direction. if the cursor is already at the edge of the screen, this has no effect *) + + PROCEDURE CUF*(n : INTEGER); + BEGIN + EscSeq (n, 'C'); + END CUF; + +(* Cursor back + moves cursor n cells in the given direction. if the cursor is already at the edge of the screen, this has no effect *) + + PROCEDURE CUB*(n : INTEGER); + BEGIN + EscSeq (n, 'D'); + END CUB; + +(* Curnser Next Line + moves cursor to beginning of the line n lines down *) + + PROCEDURE CNL*( n: INTEGER); + BEGIN + EscSeq (n, 'E'); + END CNL; + + +(* Cursor Previous Line + Moves cursor to beginning of the line n lines down *) + + PROCEDURE CPL*( n : INTEGER); + BEGIN + EscSeq (n, 'F'); + END CPL; + +(* Cursor Horizontal Absolute + Moves the cursor to column n *) + + PROCEDURE CHA*( n : INTEGER); + BEGIN + EscSeq (n, 'G'); + END CHA; + + (* Cursor position, moves cursor to row n, column m *) + PROCEDURE CUP*(n, m : INTEGER); + BEGIN + EscSeq2 (n, m, 'H'); + END CUP; + + (* Erase Display + if n = 0 then clears from cursor to end of the screen + if n = 1 then clears from cursor to beginning of the screen + if n = 2 then clears entire screen *) + + PROCEDURE ED* (n : INTEGER); + BEGIN + EscSeq(n, 'J'); + END ED; + + (* Erase in Line + Erases part of the line. If n is zero, clear from cursor to the end of the line. If n is one, clear from cursor to beginning of the line. If n is two, clear entire line. Cursor position does not change *) + PROCEDURE EL*( n : INTEGER); + BEGIN + EscSeq(n, 'K'); + END EL; + +(* Scroll Up + Scroll whole page up by n lines. New lines are added at the bottom *) + PROCEDURE SU*( n : INTEGER); + BEGIN + EscSeq(n, 'S') + END SU; + +(* Scroll Down + Scroll whole page down by n (default 1) lines. New lines are added at the top *) + PROCEDURE SD*( n : INTEGER); + BEGIN + EscSeq(n, 'T'); + END SD; + +(* Horizontal and Vertical Position, + Moves the cursor to row n, column m. Both default to 1 if omitted. Same as CUP *) + PROCEDURE HVP*(n, m : INTEGER); + BEGIN + EscSeq2 (n, m, 'f'); + END HVP; + +(* Select Graphic Rendition + Sets SGR parameters, including text color. After CSI can be zero or more parameters separated with ;. With no parameters, CSI m is treated as CSI 0 m (reset / normal), which is typical of most of the ANSI escape sequences *) + + PROCEDURE SGR*( n : INTEGER); + BEGIN + EscSeq(n, 'm'); + END SGR; + + PROCEDURE SGR2*( n, m : INTEGER); + BEGIN + EscSeq2(n, m, 'm'); + END SGR2; + +(* Device Status Report + Reports the cursor position (CPR) to the application as (as though typed at the keyboard) ESC[n;mR, where n is the row and m is the column.) *) + + PROCEDURE DSR*(n : INTEGER); + BEGIN + EscSeq(6, 'n'); + END DSR; + +(* Save Cursor Position *) + + PROCEDURE SCP*; + BEGIN + EscSeq0('s'); + END SCP; + +(* Restore Cursor Position *) + + PROCEDURE RCP*; + BEGIN + EscSeq0('u'); + END RCP; + +(* Hide the cursor *) + PROCEDURE DECTCEMl*; + BEGIN + EscSeq0("?25l") + END DECTCEMl; + +(* shows the cursor *) + PROCEDURE DECTCEMh*; + BEGIN + EscSeq0("?25h") + END DECTCEMh; + + PROCEDURE SetAttr*(attr : ARRAY OF CHAR); + VAR tmpstr : ARRAY 16 OF CHAR; + BEGIN + COPY(CSI, tmpstr); + Strings.Append(attr, tmpstr); + Console.String(tmpstr); + END SetAttr; + + BEGIN + (* init CSI sequence *) + COPY(Escape, CSI); + Strings.Append(LeftCrotchet, CSI); +(* + EraseDisplay; + GotoXY (0, 0); + COPY(CSI, tmpstr); + Strings.Append(Green, tmpstr); + Strings.Append("hello", tmpstr); + Console.String(tmpstr); Console.Ln; +*) + END vt100. diff --git a/src/lib/system/darwin/clang/Kernel0.Mod b/src/lib/system/darwin/clang/Kernel0.Mod index 99f7777d..c128b73d 100644 --- a/src/lib/system/darwin/clang/Kernel0.Mod +++ b/src/lib/system/darwin/clang/Kernel0.Mod @@ -5,7 +5,7 @@ MODULE Kernel0; *) (* version for bootstrapping voc *) - IMPORT SYSTEM, Unix, Args, Strings := oocOakStrings, version; + IMPORT SYSTEM, Unix, Args, Strings, version; TYPE RealTime = POINTER TO TimeDesc; diff --git a/src/lib/system/linux/clang/Kernel0.Mod b/src/lib/system/linux/clang/Kernel0.Mod index 99f7777d..c128b73d 100644 --- a/src/lib/system/linux/clang/Kernel0.Mod +++ b/src/lib/system/linux/clang/Kernel0.Mod @@ -5,7 +5,7 @@ MODULE Kernel0; *) (* version for bootstrapping voc *) - IMPORT SYSTEM, Unix, Args, Strings := oocOakStrings, version; + IMPORT SYSTEM, Unix, Args, Strings, version; TYPE RealTime = POINTER TO TimeDesc; diff --git a/src/lib/system/linux/gcc/Kernel0.Mod b/src/lib/system/linux/gcc/Kernel0.Mod index 99f7777d..c128b73d 100644 --- a/src/lib/system/linux/gcc/Kernel0.Mod +++ b/src/lib/system/linux/gcc/Kernel0.Mod @@ -5,7 +5,7 @@ MODULE Kernel0; *) (* version for bootstrapping voc *) - IMPORT SYSTEM, Unix, Args, Strings := oocOakStrings, version; + IMPORT SYSTEM, Unix, Args, Strings, version; TYPE RealTime = POINTER TO TimeDesc; diff --git a/src/test/vt100/crt.Mod b/src/test/vt100/crt.Mod index 80b01883..3fd63b47 100644 --- a/src/test/vt100/crt.Mod +++ b/src/test/vt100/crt.Mod @@ -109,86 +109,78 @@ VAR tmpstr : ARRAY 23 OF CHAR; Strings.Append(vt100.ResetAll, tmpstr); Console.String(tmpstr); END NormVideo; - - PROCEDURE SetAttr(attr : ARRAY OF CHAR); - VAR tmpstr : ARRAY 16 OF CHAR; - BEGIN - COPY(vt100.CSI, tmpstr); - Strings.Append(attr, tmpstr); - Console.String(tmpstr); - END SetAttr; PROCEDURE TextBackground*(color : SHORTINT); BEGIN IF color = Black THEN - SetAttr(vt100.BBlack) + vt100.SetAttr(vt100.BBlack) ELSIF color = Blue THEN - SetAttr(vt100.BBlue) + vt100.SetAttr(vt100.BBlue) ELSIF color = Green THEN - SetAttr(vt100.BGreen) + vt100.SetAttr(vt100.BGreen) ELSIF color = Cyan THEN - SetAttr(vt100.BCyan) + vt100.SetAttr(vt100.BCyan) ELSIF color = Red THEN - SetAttr(vt100.BRed) + vt100.SetAttr(vt100.BRed) ELSIF color = Magenta THEN - SetAttr(vt100.BMagenta) + vt100.SetAttr(vt100.BMagenta) ELSIF color = Brown THEN - SetAttr(vt100.BYellow) + vt100.SetAttr(vt100.BYellow) ELSIF color = LightGray THEN - SetAttr(vt100.BLightGray) + vt100.SetAttr(vt100.BLightGray) ELSIF color = DarkGray THEN - SetAttr(vt100.BDarkGray) + vt100.SetAttr(vt100.BDarkGray) ELSIF color = LightBlue THEN - SetAttr(vt100.BLightBlue) + vt100.SetAttr(vt100.BLightBlue) ELSIF color = LightGreen THEN - SetAttr(vt100.BLightBlue) + vt100.SetAttr(vt100.BLightBlue) ELSIF color = LightCyan THEN - SetAttr(vt100.BLightCyan) + vt100.SetAttr(vt100.BLightCyan) ELSIF color = LightRed THEN - SetAttr(vt100.BLightRed) + vt100.SetAttr(vt100.BLightRed) ELSIF color = LightMagenta THEN - SetAttr(vt100.BLightMagenta) + vt100.SetAttr(vt100.BLightMagenta) ELSIF color = Yellow THEN - SetAttr(vt100.BLightYellow) + vt100.SetAttr(vt100.BLightYellow) ELSIF color = White THEN - SetAttr(vt100.BWhite) + vt100.SetAttr(vt100.BWhite) END; END TextBackground; PROCEDURE TextColor*(color : SHORTINT); BEGIN IF color = Black THEN - SetAttr(vt100.Black) + vt100.SetAttr(vt100.Black) ELSIF color = Blue THEN - SetAttr(vt100.Blue) + vt100.SetAttr(vt100.Blue) ELSIF color = Green THEN - SetAttr(vt100.Green) + vt100.SetAttr(vt100.Green) ELSIF color = Cyan THEN - SetAttr(vt100.Cyan) + vt100.SetAttr(vt100.Cyan) ELSIF color = Red THEN - SetAttr(vt100.Red) + vt100.SetAttr(vt100.Red) ELSIF color = Magenta THEN - SetAttr(vt100.Magenta) + vt100.SetAttr(vt100.Magenta) ELSIF color = Brown THEN - SetAttr(vt100.Yellow) + vt100.SetAttr(vt100.Yellow) ELSIF color = LightGray THEN - SetAttr(vt100.LightGray) + vt100.SetAttr(vt100.LightGray) ELSIF color = DarkGray THEN - SetAttr(vt100.DarkGray) + vt100.SetAttr(vt100.DarkGray) ELSIF color = LightBlue THEN - SetAttr(vt100.LightBlue) + vt100.SetAttr(vt100.LightBlue) ELSIF color = LightGreen THEN - SetAttr(vt100.LightBlue) + vt100.SetAttr(vt100.LightBlue) ELSIF color = LightCyan THEN - SetAttr(vt100.LightCyan) + vt100.SetAttr(vt100.LightCyan) ELSIF color = LightRed THEN - SetAttr(vt100.LightRed) + vt100.SetAttr(vt100.LightRed) ELSIF color = LightMagenta THEN - SetAttr(vt100.LightMagenta) + vt100.SetAttr(vt100.LightMagenta) ELSIF color = Yellow THEN - SetAttr(vt100.LightYellow) + vt100.SetAttr(vt100.LightYellow) ELSIF color = White THEN - SetAttr(vt100.White) + vt100.SetAttr(vt100.White) END; END TextColor; diff --git a/src/test/vt100/vt100.Mod b/src/test/vt100/vt100.Mod index 846349f5..37ab5895 100644 --- a/src/test/vt100/vt100.Mod +++ b/src/test/vt100/vt100.Mod @@ -1,6 +1,6 @@ MODULE vt100; -IMPORT Console, Strings, IntStr := oocIntStr; +IMPORT Console, Strings; (* reference http://en.wikipedia.org/wiki/ANSI_escape_code & http://misc.flogisoft.com/bash/tip_colors_and_formatting *) @@ -69,6 +69,58 @@ CONST CSI* : ARRAY 5 OF CHAR; tmpstr : ARRAY 32 OF CHAR; + (* IntToStr routine taken from + https://github.com/romiras/Oberon-F-components/blob/master/Ott/Mod/IntStr.cp + and modified to work on 64bit system, + in order to avoid using oocIntStr, which has many dependencies *) + PROCEDURE Reverse0 (VAR str : ARRAY OF CHAR; start, end : INTEGER); + (* Reverses order of characters in the interval [start..end]. *) + VAR + h : CHAR; + BEGIN + WHILE start < end DO + h := str[start]; str[start] := str[end]; str[end] := h; + INC(start); DEC(end) + END + END Reverse0; + + PROCEDURE IntToStr*(int: LONGINT; VAR str: ARRAY OF CHAR); + (* Converts the value of `int' to string form and copies the possibly truncated + result to `str'. *) + VAR + b : ARRAY 21 OF CHAR; + s, e: INTEGER; + maxLength : SHORTINT; (* maximum number of digits representing a LONGINT value *) + BEGIN + IF SIZE(LONGINT) = 4 THEN maxLength := 11 END; + IF SIZE(LONGINT) = 8 THEN maxLength := 20 END; + (* build representation in string 'b' *) + IF int = MIN(LONGINT) THEN (* smallest LONGINT, -int is an overflow *) + IF SIZE(LONGINT) = 4 THEN + b := "-2147483648"; + e := 11 + ELSE (* SIZE(LONGINT) = 8 *) + b := "-9223372036854775808"; + e := 20 + END + ELSE + IF int < 0 THEN (* negative sign *) + b[0] := "-"; int := -int; s := 1 + ELSE (* no sign *) + s := 0 + END; + e := s; (* 's' holds starting position of string *) + REPEAT + b[e] := CHR(int MOD 10+ORD("0")); + int := int DIV 10; + INC(e) + UNTIL int = 0; + b[e] := 0X; + Reverse0(b, s, e-1); + END; + COPY(b, str) (* truncate output if necessary *) + END IntToStr; + PROCEDURE EscSeq0 (letter : ARRAY OF CHAR); VAR cmd : ARRAY 9 OF CHAR; @@ -82,7 +134,7 @@ CONST VAR nstr : ARRAY 2 OF CHAR; cmd : ARRAY 7 OF CHAR; BEGIN - IntStr.IntToStr (n, nstr); + IntToStr (n, nstr); COPY(CSI, cmd); Strings.Append (nstr, cmd); Strings.Append (letter, cmd); @@ -93,7 +145,7 @@ CONST VAR nstr : ARRAY 2 OF CHAR; cmd : ARRAY 7 OF CHAR; BEGIN - IntStr.IntToStr (n, nstr); + IntToStr (n, nstr); COPY(CSI, cmd); Strings.Append (letter, cmd); Strings.Append (nstr, cmd); @@ -104,8 +156,8 @@ CONST VAR nstr, mstr : ARRAY 5 OF CHAR; cmd : ARRAY 12 OF CHAR; BEGIN - IntStr.IntToStr(n, nstr); - IntStr.IntToStr(m, mstr); + IntToStr(n, nstr); + IntToStr(m, mstr); COPY (CSI, cmd); Strings.Append (nstr, cmd); @@ -267,6 +319,14 @@ CONST EscSeq0("?25h") END DECTCEMh; + PROCEDURE SetAttr*(attr : ARRAY OF CHAR); + VAR tmpstr : ARRAY 16 OF CHAR; + BEGIN + COPY(CSI, tmpstr); + Strings.Append(attr, tmpstr); + Console.String(tmpstr); + END SetAttr; + BEGIN (* init CSI sequence *) COPY(Escape, CSI); diff --git a/src/voc/OPC.Mod b/src/voc/OPC.Mod index be6f6df6..aa2b143c 100644 --- a/src/voc/OPC.Mod +++ b/src/voc/OPC.Mod @@ -853,8 +853,9 @@ MODULE OPC; (* copyright (c) J. Templ 12.7.95 / 3.7.96 *) | OPM.lineno: OPM.Write("l") | OPM.useparfile: OPM.Write("P") | OPM.dontasm: OPM.Write("S") - | OPM.dontlink: OPM.Write("C") + | OPM.dontlink: OPM.Write("c") | OPM.mainlinkstat: OPM.Write("M") + | OPM.notcoloroutput: OPM.Write("f") ELSE (* this else is necessary cause if someone defined a new option in OPM module diff --git a/src/voc/OPM.cmdln.Mod b/src/voc/OPM.cmdln.Mod index 86ddfafb..049585e3 100644 --- a/src/voc/OPM.cmdln.Mod +++ b/src/voc/OPM.cmdln.Mod @@ -4,7 +4,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) 31.1.2007 jt synchronized with BlackBox version, in particular PromoteIntConstToLInt added *) - IMPORT SYSTEM, Texts := Texts0, Files := Files0, Args, Console, errors, version; + IMPORT SYSTEM, Texts := Texts0, Files := Files0, Args, Console, errors, version, vt100; CONST OptionChar* = "-"; @@ -26,6 +26,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) dontasm* = 13; (* don't call external assembler/C compiler *) dontlink* = 14; (* don't link *) mainlinkstat* = 15; (* generate code for main module and then link object file statically *) + notcoloroutput* = 16; (* turn off color output *) defopt* = {inxchk, typchk, ptrinit, ansi, assert}; (* default options *) nilval* = 0; @@ -120,7 +121,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) oldSFile, newSFile, HFile, BFile, HIFile: Files.File; S: INTEGER; - stop, useLineNo, useParFile, dontAsm-, dontLink-, mainProg-, mainLinkStat-: BOOLEAN; + stop, useLineNo, useParFile, dontAsm-, dontLink-, mainProg-, mainLinkStat-, notColorOutput: BOOLEAN; (* ------------------------- Log Output ------------------------- *) @@ -164,8 +165,9 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) | "l": opt := opt / {lineno} | "P": opt := opt / {useparfile} | "S": opt := opt / {dontasm} - | "C": opt := opt / {dontlink} + | "c": opt := opt / {dontlink} | "M": opt := opt / {mainlinkstat} + | "f": opt := opt / {notcoloroutput} ELSE LogWStr(" warning: option "); LogW(OptionChar); LogW(s[i]); LogWStr(" ignored"); LogWLn END ; INC(i) @@ -188,7 +190,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) Console.Ln; Console.String(' command = "voc" options {file options}.'); Console.Ln; Console.String(' options = ["-" {option} ].'); Console.Ln; - Console.String(' option = "m" | "M" | "s" | "e" | "i" | "l" | "k" | "r" | "x" | "a" | "p" | "t" | "P" | "S" | "C" .'); Console.Ln; + Console.String(' option = "m" | "M" | "s" | "e" | "i" | "l" | "k" | "r" | "x" | "a" | "p" | "t" | "P" | "S" | "c" .'); Console.Ln; Console.Ln; Console.String(" m - generate code for main module"); Console.Ln; Console.String(" M - generate code for main module and link object statically"); Console.Ln; @@ -203,7 +205,8 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) Console.String(" t - don't check type guards (use in rare cases such as low-level modules where every cycle counts)"); Console.Ln; Console.String(" P - use .par file"); Console.Ln; Console.String(" S - don't call external assembler/compiler, only generate the asm/C code"); Console.Ln; - Console.String(" C - don't call linker"); Console.Ln; + Console.String(" c - don't call linker"); Console.Ln; + Console.String(" f - don't use color output"); Console.Ln; Console.Ln; ELSE glbopt := defopt; S := 1; s := ""; @@ -220,7 +223,7 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) IF dontlink IN glbopt THEN dontLink := TRUE ELSE dontLink := FALSE END; IF mainprog IN glbopt THEN mainProg := TRUE ELSE mainProg := FALSE END; IF mainlinkstat IN glbopt THEN INCL(glbopt, mainprog); mainLinkStat := TRUE ELSE mainLinkStat := FALSE END; - + IF notcoloroutput IN glbopt THEN notColorOutput := TRUE ELSE notColorOutput := FALSE END; GetProperties; (* GetProperties moved here in order to call it after ScanOptions because we have an option whether to use par file or not, noch *) END; @@ -295,8 +298,14 @@ MODULE OPM; (* RC 6.3.89 / 28.6.89, J.Templ 10.7.89 / 22.7.96 *) VAR S: Texts.Scanner; T: Texts.Text; ch: CHAR; i: INTEGER; buf: ARRAY 1024 OF CHAR; BEGIN - IF n >= 0 THEN LogWStr(" err ") - ELSE LogWStr(" warning "); n := -n + IF n >= 0 THEN + IF ~notColorOutput THEN vt100.SetAttr(vt100.Red) END; + LogWStr(" err "); + IF ~notColorOutput THEN vt100.SetAttr(vt100.ResetAll) END; + ELSE + IF ~notColorOutput THEN vt100.SetAttr(vt100.Magenta) END; + LogWStr(" warning "); n := -n; + IF ~notColorOutput THEN vt100.SetAttr(vt100.ResetAll) END; END ; LogWNum(n, 1); LogWStr(" "); diff --git a/src/voc/darwin/clang/extTools.Mod b/src/voc/darwin/clang/extTools.Mod index c8e8d0bd..a26e83a5 100644 --- a/src/voc/darwin/clang/extTools.Mod +++ b/src/voc/darwin/clang/extTools.Mod @@ -1,5 +1,5 @@ MODULE extTools; - IMPORT Args, Unix, Strings := oocOakStrings, Console, version; + IMPORT Args, Unix, Strings, Console, version; (* INCLUDEPATH = -Isrc/lib/system/linux/gnuc/x86_64 CCOPT = -fPIC $(INCLUDEPATH) -g diff --git a/src/voc/linux/clang/extTools.Mod b/src/voc/linux/clang/extTools.Mod index b7173120..e18f3361 100644 --- a/src/voc/linux/clang/extTools.Mod +++ b/src/voc/linux/clang/extTools.Mod @@ -1,5 +1,5 @@ MODULE extTools; - IMPORT Args, Unix, Strings := oocOakStrings, Console, version; + IMPORT Args, Unix, Strings, Console, version; (* INCLUDEPATH = -Isrc/lib/system/gnuc/x86_64 CCOPT = -fPIC $(INCLUDEPATH) -g diff --git a/src/voc/linux/gcc/extTools.Mod b/src/voc/linux/gcc/extTools.Mod index fc5ea490..30790878 100644 --- a/src/voc/linux/gcc/extTools.Mod +++ b/src/voc/linux/gcc/extTools.Mod @@ -1,5 +1,5 @@ MODULE extTools; - IMPORT Args, Unix, Strings := oocOakStrings, Console, version; + IMPORT Args, Unix, Strings, Console, version; (* INCLUDEPATH = -Isrc/lib/system/gnuc/x86_64 CCOPT = -fPIC $(INCLUDEPATH) -g diff --git a/src/voc/version.Mod b/src/voc/version.Mod index 7affc343..a749bf46 100644 --- a/src/voc/version.Mod +++ b/src/voc/version.Mod @@ -1,5 +1,5 @@ MODULE version; - IMPORT Strings := oocOakStrings, architecture, prf; + IMPORT Strings, architecture, prf; CONST (* targets *) gnux86* = 0; gnux8664* = 1; gnuarmv6j* = 2; gnuarmv6jhardfp* = 3; gnuarmv7ahardfp* = 4; gnupowerpc* = 5; diff --git a/src/voc/voc.Mod b/src/voc/voc.Mod index 2fcc6c80..aff24e52 100644 --- a/src/voc/voc.Mod +++ b/src/voc/voc.Mod @@ -4,7 +4,7 @@ MODULE voc; (* J. Templ 3.2.95 *) SYSTEM, Unix, Kernel := Kernel0, OPP, OPB, OPT, OPV, OPC, OPM, - extTools, Strings := oocOakStrings; + extTools, Strings; VAR mname : ARRAY 256 OF CHAR; (* noch *) diff --git a/voc.REMOVED.git-id b/voc.REMOVED.git-id index d862c121..8fa7603d 100644 --- a/voc.REMOVED.git-id +++ b/voc.REMOVED.git-id @@ -1 +1 @@ -68718a7b26e6a64dad48ce14a87e504fb3090495 \ No newline at end of file +17391c99e9be28ce47372911769baa418f73e1fe \ No newline at end of file diff --git a/vocstatic.linux.clang.x86_64.REMOVED.git-id b/vocstatic.linux.clang.x86_64.REMOVED.git-id index a47e45a0..2795efa6 100644 --- a/vocstatic.linux.clang.x86_64.REMOVED.git-id +++ b/vocstatic.linux.clang.x86_64.REMOVED.git-id @@ -1 +1 @@ -6e5167bb4612bdd49ff2a901df26c5aa1c5ac1fe \ No newline at end of file +8fb90d8093eda64a197b4c4f197f4004dc8476cc \ No newline at end of file diff --git a/vocstatic.linux.gcc.x86_64.REMOVED.git-id b/vocstatic.linux.gcc.x86_64.REMOVED.git-id index 824e7787..8fa7603d 100644 --- a/vocstatic.linux.gcc.x86_64.REMOVED.git-id +++ b/vocstatic.linux.gcc.x86_64.REMOVED.git-id @@ -1 +1 @@ -61b5753acc412437ff8651ca9e966787ec455b07 \ No newline at end of file +17391c99e9be28ce47372911769baa418f73e1fe \ No newline at end of file