diff --git a/Makefile.in b/Makefile.in index 450841d..984e7ac 100644 --- a/Makefile.in +++ b/Makefile.in @@ -101,9 +101,8 @@ distclean: clean realclean: distclean rm -f TAGS -# Version number changed from 2.20 to 2.40 by PE dist: $(DISTFILES) - echo bwbasic-2.40 > .fname + echo bwbasic-2.50 > .fname rm -rf `cat .fname` mkdir `cat .fname` ln $(DISTFILES) `cat .fname` diff --git a/README b/README index d36d507..8dcc782 100644 --- a/README +++ b/README @@ -3,7 +3,7 @@ README file for - Bywater BASIC Interpreter/Shell, version 2.40 + Bywater BASIC Interpreter/Shell, version 2.50 --------------------------------------------- Copyright (c) 1993, Ted A. Campbell @@ -24,6 +24,9 @@ Version 2.40 modifications by Paul Edwards, 26 Jan 2009 + Version 2.50 modifications by Paul Edwards, + 4 June 2009 + @@ -197,6 +200,13 @@ CHANGE HISTORY +CHANGES FROM 2.40 to 2.50 + + * Bug fixes + + * New compilation procedure for MVS and CMS + + CHANGES FROM 2.30 to 2.40 * Bug fixes from Bill Chatfield diff --git a/allcms.bat b/allcms.bat index 7914c79..c41b5da 100644 --- a/allcms.bat +++ b/allcms.bat @@ -2,7 +2,7 @@ del output.txt call zipcms rem for S/380 testing, use this -call runcms allcms.exec output.txt all.zip +call runcms allcms.exec output.txt all.zip bwbasic-exe.vmarc rem for S/390 testing, use this rem mvsendec encb all.zip all.dat diff --git a/allcms.exec b/allcms.exec index 254d881..a49d549 100644 --- a/allcms.exec +++ b/allcms.exec @@ -17,51 +17,12 @@ -FINARGS -EXEC GCCE BWBASIC C &SRC (PARM STDBWB -EXEC GCCE BWB_INT C &SRC (PARM STDBWB -EXEC GCCE BWB_TBL C &SRC (PARM STDBWB -EXEC GCCE BWB_CMD C &SRC (PARM STDBWB -EXEC GCCE BWB_PRN C &SRC (PARM STDBWB -EXEC GCCE BWB_EXP C &SRC (PARM STDBWB -EXEC GCCE BWB_VAR C &SRC (PARM STDBWB -EXEC GCCE BWB_INP C &SRC (PARM STDBWB -EXEC GCCE BWB_FNC C &SRC (PARM STDBWB -EXEC GCCE BWB_CND C &SRC (PARM STDBWB -EXEC GCCE BWB_OPS C &SRC (PARM STDBWB -EXEC GCCE BWB_DIO C &SRC (PARM STDBWB -EXEC GCCE BWB_STR C &SRC (PARM STDBWB -EXEC GCCE BWB_ELX C &SRC (PARM STDBWB -EXEC GCCE BWB_MTH C &SRC (PARM STDBWB -EXEC GCCE BWB_STC C &SRC (PARM STDBWB -EXEC GCCE BWX_TTY C &SRC (PARM STDBWB -EXEC GCCE UNIXIO C &SRC (PARM STDBWB +FILEDEF INPUT TAP1 (LRECL 80 BLKSIZE 32720 RECFM FB +MVSUNZIP DD:INPUT &SRC +FILEDEF INPUT CLEAR -&STACK HT -LOAD BWBASIC (NOAUTO -INCLUDE BWB_INT (NOAUTO -INCLUDE BWB_TBL (NOAUTO -INCLUDE BWB_CMD (NOAUTO -INCLUDE BWB_PRN (NOAUTO -INCLUDE BWB_EXP (NOAUTO -INCLUDE BWB_VAR (NOAUTO -INCLUDE BWB_INP (NOAUTO -INCLUDE BWB_FNC (NOAUTO -INCLUDE BWB_CND (NOAUTO -INCLUDE BWB_OPS (NOAUTO -INCLUDE BWB_DIO (NOAUTO -INCLUDE BWB_STR (NOAUTO -INCLUDE BWB_ELX (NOAUTO -INCLUDE BWB_MTH (NOAUTO -INCLUDE BWB_STC (NOAUTO -INCLUDE BWX_TTY (NOAUTO -&STACK RT -INCLUDE UNIXIO (NOAUTO +EXEC COMPILE &SRC &EXE -GENMOD BWBASIC -COPY BWBASIC MODULE &SRC = = &EXE (REPLACE -COPY PROFILE BAS &SRC = = &EXE (REPLACE - -* Quick test of bwbasic -BWBASIC "EXAMPLE BAS" +VMARC PACK * * &EXE (TAP2 BLOCK 80 diff --git a/allmvs.bat b/allmvs.bat index 9901cb7..53c01ba 100644 --- a/allmvs.bat +++ b/allmvs.bat @@ -1,11 +1,3 @@ -rem this is the name of the patch file -set bwbname=bwb1 - -rem rm -fr bwbasic -rem md bwbasic -rem cd bwbasic -rem unzip ..\%bwbname% -rem chmod -R 666 * -call zipall -call bwbasic3 +del output.txt +call zipmvs call subjobs diff --git a/bwb_elx.c b/bwb_elx.c index b355f12..9a8a7e2 100644 --- a/bwb_elx.c +++ b/bwb_elx.c @@ -754,7 +754,7 @@ exp_function( expression ) sizeof( struct bwb_variable ), "exp_function" )) == NULL ) { bwb_error( err_getmem ); - return NULL; + return OP_ERROR; } /* assign pointers to argument stack */ diff --git a/bwbasic.h b/bwbasic.h index 7a68ba0..c6cc59c 100644 --- a/bwbasic.h +++ b/bwbasic.h @@ -41,7 +41,7 @@ /* Version number */ -#define VERSION "2.40" /* Current version number */ +#define VERSION "2.50" /* Current version number */ /*************************************************************** @@ -160,6 +160,10 @@ #define HAVE_SYSSTAT TRUE /* Compiler has header */ #endif +#ifndef HAVE_MATHERR +#define HAVE_MATHERR FALSE /* Compiler doesn't call matherr */ +#endif + /*************************************************************** bwbasic.h: Part I-C: Define Program Configuration diff --git a/bwbasic2.jcl b/bwbasic2.jcl index b8e0b0b..aa4d6c2 100644 --- a/bwbasic2.jcl +++ b/bwbasic2.jcl @@ -3,32 +3,32 @@ //CREATE PROC BWBPREF='BWBASIC' //DELETE EXEC PGM=IEFBR14 //DD1 DD DSN=&BWBPREF..SOURCE,DISP=(MOD,DELETE), -// UNIT=SYSDA,SPACE=(TRK,(0)) +// UNIT=SYSALLDA,SPACE=(TRK,(0)) //DD2 DD DSN=&BWBPREF..INCLUDE,DISP=(MOD,DELETE), -// UNIT=SYSDA,SPACE=(TRK,(0)) +// UNIT=SYSALLDA,SPACE=(TRK,(0)) //DD3 DD DSN=&BWBPREF..NCALIB,DISP=(MOD,DELETE), -// UNIT=SYSDA,SPACE=(TRK,(0)) +// UNIT=SYSALLDA,SPACE=(TRK,(0)) //DD4 DD DSN=&BWBPREF..LINKLIB,DISP=(MOD,DELETE), -// UNIT=SYSDA,SPACE=(TRK,(0)) +// UNIT=SYSALLDA,SPACE=(TRK,(0)) //DD5 DD DSN=&BWBPREF..JCL,DISP=(MOD,DELETE), -// UNIT=SYSDA,SPACE=(TRK,(0)) +// UNIT=SYSALLDA,SPACE=(TRK,(0)) //* //ALLOC EXEC PGM=IEFBR14 //DD1 DD DSN=&BWBPREF..SOURCE,DISP=(,CATLG), -// DCB=(RECFM=VB,LRECL=224,BLKSIZE=9024), -// SPACE=(CYL,(7,1,10)),UNIT=SYSDA +// DCB=(RECFM=VB,LRECL=255,BLKSIZE=6144), +// SPACE=(6144,(160,160,44)),UNIT=SYSALLDA //DD2 DD DSN=&BWBPREF..INCLUDE,DISP=(,CATLG), -// DCB=(RECFM=VB,LRECL=224,BLKSIZE=9024), -// SPACE=(CYL,(1,1,10)),UNIT=SYSDA +// DCB=(RECFM=VB,LRECL=255,BLKSIZE=6144), +// SPACE=(6144,(22,22,44)),UNIT=SYSALLDA //DD3 DD DSN=&BWBPREF..NCALIB,DISP=(,CATLG), -// DCB=(RECFM=U,LRECL=0,BLKSIZE=3200), -// SPACE=(CYL,(1,1,10)),UNIT=SYSDA +// DCB=(RECFM=U,LRECL=0,BLKSIZE=6144), +// SPACE=(6144,(60,60,44)),UNIT=SYSALLDA //DD4 DD DSN=&BWBPREF..LINKLIB,DISP=(,CATLG), -// DCB=(RECFM=U,LRECL=0,BLKSIZE=3200), -// SPACE=(CYL,(1,1,10)),UNIT=SYSDA +// DCB=(RECFM=U,LRECL=0,BLKSIZE=6144), +// SPACE=(6144,(70,70,44)),UNIT=SYSALLDA //DD5 DD DSN=&BWBPREF..JCL,DISP=(,CATLG), -// DCB=(RECFM=FB,LRECL=80,BLKSIZE=9040), -// SPACE=(CYL,(1,1,20)),UNIT=SYSDA +// DCB=(RECFM=FB,LRECL=80,BLKSIZE=6080), +// SPACE=(6080,(17,17,44)),UNIT=SYSALLDA // PEND //* //S1 EXEC CREATE diff --git a/bwbasic3.bat b/bwbasic3.bat deleted file mode 100644 index c1bb8d5..0000000 --- a/bwbasic3.bat +++ /dev/null @@ -1,4 +0,0 @@ -del allzips.txt -mvsendec encb all.zip allzips.txt -m4 bwbasic3.m4 >bwbasic3.jcl -del allzips.txt diff --git a/bwbasic3.jcl b/bwbasic3.jcl new file mode 100644 index 0000000..cacf1ee --- /dev/null +++ b/bwbasic3.jcl @@ -0,0 +1,20 @@ +//BWBGEN JOB CLASS=C,REGION=0K +//* +//TRANSFER PROC BWBPREF='BWBASIC' +//DELETE EXEC PGM=IEFBR14 +//DD1 DD DSN=&BWBPREF..ALLZIPS,DISP=(MOD,DELETE), +// UNIT=SYSALLDA,SPACE=(TRK,(0)) +//* +//COPY EXEC PGM=IEBGENER +//SYSUT1 DD DSN=HERC02.IN,DISP=OLD, +// UNIT=TAPE,VOL=SER=PCTOMF,LABEL=(1,NL), +// DCB=(RECFM=U,LRECL=0,BLKSIZE=6144) +//SYSUT2 DD DSN=&BWBPREF..ALLZIPS,DISP=(,CATLG), +// SPACE=(6144,(200,200),RLSE),UNIT=SYSALLDA, +// DCB=(RECFM=U,LRECL=0,BLKSIZE=6144) +//SYSIN DD DUMMY +//SYSPRINT DD SYSOUT=* +// PEND +//* +//S1 EXEC TRANSFER +// diff --git a/bwbasic3.m4 b/bwbasic3.m4 deleted file mode 100644 index 905db3f..0000000 --- a/bwbasic3.m4 +++ /dev/null @@ -1,22 +0,0 @@ -//BWBGEN JOB CLASS=C,REGION=0K -//* -//TRANSFER PROC BWBPREF='BWBASIC',PDPPREF='PDPCLIB' -//DELETE EXEC PGM=IEFBR14 -//DD1 DD DSN=&BWBPREF..ALLZIPS,DISP=(MOD,DELETE), -// UNIT=SYSDA,SPACE=(TRK,(0)) -//* -//MVSENDEC EXEC PGM=MVSENDEC,PARM='decb dd:input dd:output' -//STEPLIB DD DSN=&PDPPREF..LINKLIB,DISP=SHR -//INPUT DD DUMMY -//OUTPUT DD DSN=&BWBPREF..ALLZIPS,DISP=(,CATLG), -// DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120), -// SPACE=(CYL,(20,10),RLSE),UNIT=SYSDA -//SYSIN DD DUMMY -//SYSPRINT DD SYSOUT=*,DCB=(RECFM=F,LRECL=132,BLKSIZE=132) -//SYSTERM DD SYSOUT=*,DCB=(RECFM=F,LRECL=132,BLKSIZE=132) -// PEND -//* -//S1 EXEC TRANSFER -//MVSENDEC.INPUT DD * -undivert(allzips.txt)/* -// diff --git a/bwbasic4.jcl b/bwbasic4.jcl index ca01b63..90701a3 100644 --- a/bwbasic4.jcl +++ b/bwbasic4.jcl @@ -3,11 +3,11 @@ //CREATE EXEC PGM=IEFBR14 //DD1 DD DSN=&&ZIPS,DISP=(,PASS), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120), -// SPACE=(CYL,(20,10,20)),UNIT=SYSDA +// SPACE=(6144,(100,100,44)),UNIT=SYSALLDA //* -//UNZIP1 PROC PDPPREF='PDPCLIB',BWBPREF='BWBASIC' -//MINI EXEC PGM=MVSUNZIP,PARM='dd:input dd:output binary' -//STEPLIB DD DSN=&PDPPREF..LINKLIB,DISP=SHR +//UNZIP1 PROC MINPREF='MINIZIP',BWBPREF='BWBASIC' +//MINI EXEC PGM=MINIUNZ,PARM='dd:input dd:output' +//STEPLIB DD DSN=&MINPREF..LINKLIB,DISP=SHR //INPUT DD DSN=&BWBPREF..ALLZIPS,DISP=SHR //OUTPUT DD DSN=&&ZIPS,DISP=(OLD,PASS) //SYSIN DD DUMMY @@ -15,9 +15,9 @@ //SYSTERM DD SYSOUT=*,DCB=(RECFM=F,LRECL=132,BLKSIZE=132) // PEND //* -//UNZIP2 PROC IN=,OUT=,PDPPREF='PDPCLIB',BWBPREF='BWBASIC' -//MINI EXEC PGM=MVSUNZIP,PARM='dd:input dd:output' -//STEPLIB DD DSN=&PDPPREF..LINKLIB,DISP=SHR +//UNZIP2 PROC IN=,OUT=,MINPREF='MINIZIP',BWBPREF='BWBASIC' +//MINI EXEC PGM=MINIUNZ,PARM='-a dd:input dd:output' +//STEPLIB DD DSN=&MINPREF..LINKLIB,DISP=SHR //INPUT DD DSN=&&ZIPS(&IN),DISP=(OLD,PASS) //OUTPUT DD DSN=&BWBPREF..&OUT,DISP=SHR //SYSIN DD DUMMY diff --git a/bwbasic5.jcl b/bwbasic5.jcl index 0c82641..b71278f 100644 --- a/bwbasic5.jcl +++ b/bwbasic5.jcl @@ -2,7 +2,7 @@ //* //BWBCMP PROC BWBPREF='BWBASIC',MEMBER='',GCCPREF='GCC', // PDPPREF='PDPCLIB', -// COS1='-w -S -ansi', +// COS1='-Os -S -ansi', // COS2='-o dd:out -' //* //COMP EXEC PGM=GCC, @@ -13,24 +13,24 @@ // DD DSN=&PDPPREF..INCLUDE,DISP=SHR //SYSINCL DD DSN=&BWBPREF..INCLUDE,DISP=SHR,DCB=BLKSIZE=32720 // DD DSN=&PDPPREF..INCLUDE,DISP=SHR -//OUT DD DSN=&&TEMP1,DISP=(,PASS),UNIT=SYSDA, -// DCB=(LRECL=80,BLKSIZE=9040,RECFM=FB), -// SPACE=(CYL,(10,10)) -//SYSPRINT DD SYSOUT=*,DCB=(LRECL=132,BLKSIZE=132) -//SYSTERM DD SYSOUT=*,DCB=(LRECL=132,BLKSIZE=132) +//OUT DD DSN=&&TEMP1,DISP=(,PASS),UNIT=SYSALLDA, +// DCB=(LRECL=80,BLKSIZE=6080,RECFM=FB), +// SPACE=(6080,(500,500)) +//SYSPRINT DD SYSOUT=*,DCB=(RECFM=F,LRECL=132,BLKSIZE=132) +//SYSTERM DD SYSOUT=*,DCB=(RECFM=F,LRECL=132,BLKSIZE=132) //* //ASM EXEC PGM=ASMBLR, // PARM='DECK,NOLIST', // COND=(4,LT,COMP) //SYSLIB DD DSN=SYS1.MACLIB,DISP=SHR // DD DSN=&PDPPREF..MACLIB,DISP=SHR -//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) -//SYSUT2 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) -//SYSUT3 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) +//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(2,1)) +//SYSUT2 DD UNIT=SYSALLDA,SPACE=(CYL,(2,1)) +//SYSUT3 DD UNIT=SYSALLDA,SPACE=(CYL,(2,1)) //SYSPRINT DD SYSOUT=* //SYSLIN DD DUMMY //SYSGO DD DUMMY -//SYSPUNCH DD DSN=&&OBJSET,UNIT=SYSDA,SPACE=(80,(240,200)), +//SYSPUNCH DD DSN=&&OBJSET,UNIT=SYSALLDA,SPACE=(80,(240,200)), // DISP=(,PASS) //SYSIN DD DSN=&&TEMP1,DISP=(OLD,DELETE) //* @@ -38,7 +38,7 @@ // COND=((4,LT,COMP),(4,LT,ASM)) //SYSLIN DD DSN=&&OBJSET,DISP=(OLD,DELETE) //SYSLMOD DD DSN=&BWBPREF..NCALIB(&MEMBER),DISP=SHR -//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) +//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(2,1)) //SYSPRINT DD SYSOUT=* // PEND //* diff --git a/bwbasic6.jcl b/bwbasic6.jcl index 3eb3bb1..7520c9d 100644 --- a/bwbasic6.jcl +++ b/bwbasic6.jcl @@ -1,7 +1,7 @@ //BWBGEN JOB CLASS=C,REGION=0K //LINK PROC BWBPREF='BWBASIC',PDPPREF='PDPCLIB' //LKED EXEC PGM=IEWL,PARM='MAP,LIST,SIZE=(999424,65536)' -//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(30,10)) +//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(30,10)) //SYSPRINT DD SYSOUT=* //SYSLIB DD DSN=&PDPPREF..NCALIB,DISP=SHR,DCB=BLKSIZE=32760 // DD DSN=&BWBPREF..NCALIB,DISP=SHR diff --git a/bwbasic7.jcl b/bwbasic7.jcl index b25bf0d..34fa5d4 100644 --- a/bwbasic7.jcl +++ b/bwbasic7.jcl @@ -10,8 +10,10 @@ //* //CLEAN PROC BWBPREF='BWBASIC' //DELETE EXEC PGM=IEFBR14 -//DD1 DD DSN=&BWBPREF..ALLZIPS,DISP=(MOD,DELETE), -// UNIT=SYSDA,SPACE=(TRK,(0)) +//DD0 DD DSN=&BWBPREF..ALLZIPS,DISP=(MOD,DELETE), +// UNIT=SYSALLDA,SPACE=(TRK,(0)) +//DD3 DD DSN=&BWBPREF..NCALIB,DISP=(MOD,DELETE), +// UNIT=SYSALLDA,SPACE=(TRK,(0)) // PEND //* //S1 EXEC RUNBW diff --git a/bwbmvs.txt b/bwbmvs.txt index 4349215..809902c 100644 --- a/bwbmvs.txt +++ b/bwbmvs.txt @@ -1,14 +1,50 @@ -BWBASIC for MVS ---------------- +BWBASIC for MVS (3.8 and above) and CMS (VM/370 and above) +---------------------------------------------------------- -To compile BWBASIC on MVS, run the following commands: +To compile bwbasic for MVS, you will need a suitable MVS C +compiler such as GCCMVS. -zipall -bwbasic3 -subjobs +You then need to transfer all the source code to the +mainframe. zipmvs.bat may be useful for doing this, but the +process of transferring files is beyond the scope of this +document and site-specific. -after taking a look at what they do and seeing if they -are appropriate to your environment. -Or just run "allmvs" which will do all of that. +On the mainframe, modify (according to your site's +requirements), then run, the following bits of JCL: +bwbasic1.jcl +bwbasic2.jcl +bwbasic3.jcl (optional - example only) +bwbasic4.jcl (optional - example only) +bwbasic5.jcl +bwbasic6.jcl +bwbasic7.jcl +Note that the batch file "allmvs" provides an example of how +the process was automated at one site. + + +The end result of this process is that a BWBASIC load module +will be created in BWBASIC.LINKLIB. + + + +Version: + +bwbasic.h contains the version number, and this is displayed +when you invoke the program with no parameters. + + + +Support: + +For BWBASIC for MVS support, try here: +http://tech.groups.yahoo.com/group/hercules-os380/ + + + +CMS: + +The steps for CMS are similar, except instead of running JCL, +you need to execute the "compile" exec. An example "allcms" +Windows batch file shows one way of automating this process. diff --git a/bwx_tty.c b/bwx_tty.c index 9fe20d4..45593c5 100644 --- a/bwx_tty.c +++ b/bwx_tty.c @@ -378,8 +378,16 @@ bwx_shell( l ) the error message, then calls the break_handler() routine. + Note that this function isn't supported + by all compilers (it's not part of C90). + If it exists, it's an extension in math.h + and it will be called whenever there's + a divide by zero or something like that. + ***************************************************************/ +#if HAVE_MATHERR + #if ANSI_C int matherr( struct exception *except ) @@ -396,6 +404,8 @@ matherr( except ) return FALSE; } +#endif + #if COMMON_CMDS /*************************************************************** diff --git a/compile.bat b/compile.bat index 3f79b4c..deb2e0e 100644 --- a/compile.bat +++ b/compile.bat @@ -21,5 +21,5 @@ call stdcomp bwb_stc.c call stdcomp bwx_tty.c call stdcomp unixio.c -gcc -o bwbasic.exe *.o +rem gcc -o bwbasic.exe *.o rem bcc32 -ebwbasic.exe *.obj diff --git a/compile.exec b/compile.exec new file mode 100644 index 0000000..143a012 --- /dev/null +++ b/compile.exec @@ -0,0 +1,67 @@ +* Usage - COMPILE + +* This script compiles all the files on SRC disk (default is A) +* and copies the resultant modules to the EXE disk (default B) + +&SRC = A +&EXE = B + + +&IF &INDEX EQ 0 &GOTO -FINARGS +&SRC = &1 +&ARGS &2 &3 &4 &5 &6 &7 &8 &9 + +&IF &INDEX EQ 0 &GOTO -FINARGS +&EXE = &1 + +-FINARGS + + +EXEC GCCE BWBASIC C &SRC (PARM STDBWB +EXEC GCCE BWB_INT C &SRC (PARM STDBWB +EXEC GCCE BWB_TBL C &SRC (PARM STDBWB +EXEC GCCE BWB_CMD C &SRC (PARM STDBWB +EXEC GCCE BWB_PRN C &SRC (PARM STDBWB +EXEC GCCE BWB_EXP C &SRC (PARM STDBWB +EXEC GCCE BWB_VAR C &SRC (PARM STDBWB +EXEC GCCE BWB_INP C &SRC (PARM STDBWB +EXEC GCCE BWB_FNC C &SRC (PARM STDBWB +EXEC GCCE BWB_CND C &SRC (PARM STDBWB +EXEC GCCE BWB_OPS C &SRC (PARM STDBWB +EXEC GCCE BWB_DIO C &SRC (PARM STDBWB +EXEC GCCE BWB_STR C &SRC (PARM STDBWB +EXEC GCCE BWB_ELX C &SRC (PARM STDBWB +EXEC GCCE BWB_MTH C &SRC (PARM STDBWB +EXEC GCCE BWB_STC C &SRC (PARM STDBWB +EXEC GCCE BWX_TTY C &SRC (PARM STDBWB +EXEC GCCE UNIXIO C &SRC (PARM STDBWB + + +&STACK HT +LOAD BWBASIC (NOAUTO +INCLUDE BWB_INT (NOAUTO +INCLUDE BWB_TBL (NOAUTO +INCLUDE BWB_CMD (NOAUTO +INCLUDE BWB_PRN (NOAUTO +INCLUDE BWB_EXP (NOAUTO +INCLUDE BWB_VAR (NOAUTO +INCLUDE BWB_INP (NOAUTO +INCLUDE BWB_FNC (NOAUTO +INCLUDE BWB_CND (NOAUTO +INCLUDE BWB_OPS (NOAUTO +INCLUDE BWB_DIO (NOAUTO +INCLUDE BWB_STR (NOAUTO +INCLUDE BWB_ELX (NOAUTO +INCLUDE BWB_MTH (NOAUTO +INCLUDE BWB_STC (NOAUTO +INCLUDE BWX_TTY (NOAUTO +&STACK RT +INCLUDE UNIXIO (NOAUTO + +GENMOD BWBASIC +COPY BWBASIC MODULE &SRC = = &EXE (REPLACE +COPY PROFILE BAS &SRC = = &EXE (REPLACE + + +* Quick test of bwbasic +BWBASIC "EXAMPLE BAS" diff --git a/stdbwb.parm b/stdbwb.parm index c2bdd8a..eea6614 100644 --- a/stdbwb.parm +++ b/stdbwb.parm @@ -1 +1 @@ --w -S -ansi -o dd:out - +-Os -S -ansi -o dd:out - diff --git a/stdcomp.bat b/stdcomp.bat index ceb1ea0..514f10a 100644 --- a/stdcomp.bat +++ b/stdcomp.bat @@ -1,3 +1,3 @@ rem gcc -w -c -ansi -I . %1 %2 %3 %4 %5 %6 %7 %8 %9 rem bcc32 -w- -A -c -I. %1 %2 %3 %4 %5 %6 %7 %8 %9 -gccmvs -w -S -ansi -nostdinc -I ../pdos/pdpclib -I . %1 %2 %3 %4 %5 %6 %7 %8 %9 +gccmvs -Os -S -ansi -nostdinc -I ../pdos/pdpclib -I . %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/subjobs.bat b/subjobs.bat index 5b874f2..11ecec5 100644 --- a/subjobs.bat +++ b/subjobs.bat @@ -6,4 +6,4 @@ type bwbasic4.jcl >>alljcl.jcl type bwbasic5.jcl >>alljcl.jcl type bwbasic6.jcl >>alljcl.jcl type bwbasic7.jcl >>alljcl.jcl -call runmvs alljcl.jcl alljcl.txt +call runmvs alljcl.jcl output.txt all.zip diff --git a/zipall.bat b/zipall.bat deleted file mode 100644 index 7545cb9..0000000 --- a/zipall.bat +++ /dev/null @@ -1,11 +0,0 @@ -del bwbinc.zip -del bwbsrc.zip -del bwbjcl.zip -del all.zip -del bwbasic3.jcl -del alljcl.jcl -del alljcl.txt -zip -0 -X -ll -j bwbsrc.zip *.c -zip -0 -X -ll -j bwbinc.zip *.h -zip -0 -X -ll -j bwbjcl.zip *.jcl README COPYING -zip -0 -X all *.zip diff --git a/zipcms.bat b/zipcms.bat index 5292f8d..5bc907f 100644 --- a/zipcms.bat +++ b/zipcms.bat @@ -1,3 +1,2 @@ del all.zip -del alljcl.txt zip -0 -X -ll -j all *.c *.h *.exec *.bas *.parm README COPYING diff --git a/zipmvs.bat b/zipmvs.bat new file mode 100644 index 0000000..d9b4e12 --- /dev/null +++ b/zipmvs.bat @@ -0,0 +1,9 @@ +del bwbinc.zip +del bwbsrc.zip +del bwbjcl.zip +del all.zip +del alljcl.jcl +zip -9 -X -ll -j bwbsrc.zip *.c +zip -9 -X -ll -j bwbinc.zip *.h +zip -9 -X -ll -j bwbjcl.zip *.jcl README COPYING +zip -9 -X all *.zip