]> 4ch.mooo.com Git - 16.git/commitdiff
got bcexmm to compile again. i got alot of work todo with this section of the code...
authorsparky4 <sparky4@cock.li>
Wed, 8 May 2019 18:47:18 +0000 (13:47 -0500)
committersparky4 <sparky4@cock.li>
Wed, 8 May 2019 18:47:18 +0000 (13:47 -0500)
12 files changed:
JOYTEST.E [deleted file]
MAPTEST.UPX [deleted file]
OPLTEST.E [deleted file]
bcexmm.dsk
bcexmm.prj
makefile
src/bcexmm.exe [new file with mode: 0755]
src/exmmtest.h
src/lib/16_head.c
src/lib/16_mm.c
src/lib/16_tail.h
src/util/bcexmm.sh

diff --git a/JOYTEST.E b/JOYTEST.E
deleted file mode 100755 (executable)
index cce505e..0000000
Binary files a/JOYTEST.E and /dev/null differ
diff --git a/MAPTEST.UPX b/MAPTEST.UPX
deleted file mode 100755 (executable)
index e69de29..0000000
diff --git a/OPLTEST.E b/OPLTEST.E
deleted file mode 100755 (executable)
index 07fadfb..0000000
Binary files a/OPLTEST.E and /dev/null differ
index cbc9d9823117bfab44c7be26b71f205a0fb7afcc..c914beb122aede594d118a8c14ff73e075a5748c 100755 (executable)
Binary files a/bcexmm.dsk and b/bcexmm.dsk differ
index 27882aabbbb41b43c371b37c8c30271f90c82bf0..356f43287323248aa92384cafc1b9508d9b7237d 100755 (executable)
Binary files a/bcexmm.prj and b/bcexmm.prj differ
index c0f1ecb0c0580b09d65ca730644123125c7d76fd..0bd9ef9c0f6d3832c444015a244ed4cbcdbb7dc1 100755 (executable)
--- a/makefile
+++ b/makefile
@@ -55,7 +55,7 @@ DOSLIBMAKEALL=./buildall.sh build all
 to_os_path=/=\
 REMOVECOMMAND=del
 COPYCOMMAND=copy /y
-MOVECOMMAND=move
+MOVECOMMAND=move /q
 DIRSEP=\
 OBJ=obj
 DUMP=type
@@ -495,7 +495,6 @@ clean: .symbolic
        @if not exist $(DOSLIBDIR)/buildall.sh wmake -s -h initlibs
        @wmake -s -h initscript
        @for %f in ($(ALLEXEC)) do @if exist %f $(REMOVECOMMAND) %f
-       @wmake -s -h exe2e
 !ifdef __LINUX__
        @if exist *.LIB $(REMOVECOMMAND) *.LIB
        @. src/util/bcexmm.sh
@@ -508,6 +507,7 @@ clean: .symbolic
 !else
        @if exist *.o $(REMOVECOMMAND) *.o
 !endif
+       @wmake -s -h exe2e
        @if exist *.$(OBJ) $(REMOVECOMMAND) *.$(OBJ)
        @if exist *.bco $(REMOVECOMMAND) *.bco
        @if exist *.BCO $(REMOVECOMMAND) *.BCO
@@ -586,11 +586,11 @@ comq: .symbolic
        @wmake -s -h e2exe
 
 exe2e: .symbolic
-       @if exist *.exe $(MOVECOMMAND) *.exe *.e
+       @if exist *.exe $(MOVECOMMAND) *.exe $(SRC)
        #@for %f in ($(ALLEXEC)) do @if exist %f $(REMOVECOMMAND) %f
 
 e2exe: .symbolic
-       @if exist *.e $(MOVECOMMAND) *.e *.exe
+       @if exist $(SRC)/*.exe $(MOVECOMMAND) $(SRC)/*.exe .
 
 www: .symbolic
        @if exist 16.exe @wmake -s -h wwwdo
diff --git a/src/bcexmm.exe b/src/bcexmm.exe
new file mode 100755 (executable)
index 0000000..db6635c
Binary files /dev/null and b/src/bcexmm.exe differ
index 34926cdc7c15f420a657a9fdbc2262e52be3c967..8df0f2d26db8842e2a467d9c8fc4e50ffb498adf 100755 (executable)
@@ -51,7 +51,7 @@
 #define NOVID\r
 #endif\r
 #ifdef __WATCOMC__\r
-//#define NOVID\r
+#define NOVID\r
 //#define                      SCROLLLOAD\r
 #endif\r
 \r
index aed125030ef8beb2a0d4d1966400d7744e1d36a5..d337d6b7fe22cc0831c4af12291cd39b1b380538 100755 (executable)
@@ -224,14 +224,19 @@ void regidump()
 {\r
        //GENERAL PURPOSE\r
        unsigned short _ax,_bx,_cx,_dx;\r
+#ifndef __BORLANDC__\r
        unsigned short _cflag;\r
+#endif\r
        unsigned char _al,_ah,_bl,_bh,_cl,_ch,_dl,_dh;\r
 \r
        unsigned short _bp,_si,_di,_sp;\r
 \r
-       unsigned short _cs,_ds,_es,_ss; //SEGMENT\r
+       unsigned short _cs_,_ds_,_es_,_ss_;     //SEGMENT\r
 //     unsigned short _ip;     //SPECIAL PURPOSE\r
-       _ax=_bx=_cx=_dx=_si=_di=_bp=_sp=_cs=_ds=_es=_ss=_cflag=0;\r
+       _ax=_bx=_cx=_dx=_si=_di=_bp=_sp=_cs_=_ds_=_es_=_ss_=0;\r
+#ifndef __BORLANDC__\r
+       _cflag=0;\r
+#endif\r
        _ah=_al=_bh=_bl=_ch=_cl=_dh=_dl=0;\r
 \r
 #ifndef REGIDUMP_USE_CAPS\r
@@ -255,6 +260,14 @@ void regidump()
                mov _if,if\r
                mov _df,df\r
                mov _of,of*/\r
+               mov _ah,ah\r
+               mov _al,al\r
+               mov _bh,bh\r
+               mov _bl,bl\r
+               mov _ch,ch\r
+               mov _cl,cl\r
+               mov _dh,dh\r
+               mov _dl,dl\r
        }\r
 #else\r
 _ax=_AX;\r
@@ -274,15 +287,17 @@ _cl=_CL;
 _dh=_DH;\r
 _dl=_DL;\r
 #endif\r
+#ifndef __BORLANDC__\r
        _cflag=_CFLAG;\r
+#endif\r
        __asm {\r
                mov _bp,bp\r
                mov _sp,sp\r
 \r
-               mov _cs,cs\r
-               mov _ds,ds\r
-               mov _es,es\r
-               mov _ss,ss\r
+               mov _cs_,cs\r
+               mov _ds_,ds\r
+               mov _es_,es\r
+               mov _ss_,ss\r
        }\r
 //     printf("integer values: ax=%04d bx=%04d cx=%04d dx=%04d\n", a, b, c, d);\r
 //     printf("unsigned values:ax=%04u bx=%04u cx=%04u dx=%04u\n", a, b, c, d);\r
@@ -303,14 +318,16 @@ _dl=_DL;
 \r
        printf("segment:\n");\r
 #ifndef REGIDUMP_HEX\r
-       printf("        cs=%04u\n       ds=%04u\n       es=%04u\n       ss=%04u\n", _cs, _ds, _es, _ss);\r
+       //printf("      cs=%04u\n       ds=%04u\n       es=%04u\n       ss=%04u\n", _cs_, _ds, _es_, _ss_);\r
+       printf("        cs=%04u\n", _cs_);      printf("        ds=%04u\n", _ds_);      printf("        es=%04u\n", _es_);      printf("        ss=%04u\n", _ss_);\r
 #else\r
-       printf("        cs=%04x\n       ds=%04x\n       es=%04x\n       ss=%04x\n", _cs, _ds, _es, _ss);\r
+       //printf("      cs=%04x\n       ds=%04x\n       es=%04x\n       ss=%04x\n", _cs_, _ds_, _es_, _ss_);\r
+       printf("        cs=%04x\n", _cs_);      printf("        ds=%04x\n", _ds_);      printf("        es=%04x\n", _es_);      printf("        ss=%04x\n", _ss_);\r
 #endif\r
        printf("                ---------------------------------------\n");\r
 \r
 \r
-\r
+#ifndef __BORLANDC__\r
        printf("cflags:\n");\r
 /*     printf("        ip=%04u\n\n", _ip);\r
        printf("        cf=%04u\npf=%04u\naf=%04u\nzf=%04u\nsf=%04u\ntf=%04u\nif=%04u\ndf=%04u\nof=%04u\n", _cf, _pf, _af, _zf, _sf, _tf, _if, _df, _of);\r
@@ -325,12 +342,14 @@ _dl=_DL;
 //     printf("        ip=%04x\n\n", _IP);\r
 //     printf("        cf=%04x\npf=%04x\naf=%04x\nzf=%04x\nsf=%04x\ntf=%04x\nif=%04x\ndf=%04x\nof=%04x\n", _CF, _PF, _AF, _ZF, _SF, _TF, _IF, _DF, _OF);\r
        printf("cflag: %016x\n",(_cflag));\r
+       printf("        ahl=%016x", _al|(_ah<<4));\r
 #endif\r
        printf("testing\n");\r
 //     printf("dx: "NIBBLE_TO_BINARY_PATTERN""NIBBLE_TO_BINARY_PATTERN"\n",            NIBBLE_TO_BINARY(_dx>>4), NIBBLE_TO_BINARY(_dx));\r
 //     printf("dx: "BYTE_TO_BINARY_PATTERN""BYTE_TO_BINARY_PATTERN"\n",                BYTE_TO_BINARY(_dx>>8), BYTE_TO_BINARY(_dx));\r
        printf("dx: "WORD_TO_BINARY_PATTERN"\n",                WORD_TO_BINARY(_dx));\r
        printf("                ---------------------------------------\n");\r
+#endif\r
 #endif\r
 \r
        printf("for more info see\n     http://stackoverflow.com/questions/9130349/how-many-registers-are-there-in-8086-8088\n");\r
index 55ee136cb246acda7c2134807a148e7c27f0e15d..db4ea30132d824f1df54bfa53180d3861e0172f1 100755 (executable)
@@ -1344,8 +1344,8 @@ extern char global_temp_status_text[512];
 extern char global_temp_status_text2[512];\r
 #endif\r
 //#ifdef __WATCOMC__\r
-//#define MMSMPANVID\r
-#define MMSMSCANINFO\r
+//++??#define MMSMPANVID\r
+//++++#define MMSMSCANINFO\r
 //#endif\r
 \r
 /*\r
index d9c2fee4d98d9e51952511b96bdc9a76ebd64f50..56f656126cedadb2da1f5ccc90e94d620b8c891a 100755 (executable)
 #define PAL_DATA_REG                   0x03C9   /* Color register, data port */\r
 #endif\r
 \r
+extern char global_temp_status_text[512];\r
+\r
 void   Shutdown16(global_game_variables_t *gvar),\r
        Startup16(global_game_variables_t *gvar),\r
        StartupCAMMPM (global_game_variables_t *gvar),\r
index 891da392a4bd9d55de888c229628528782128efd..90bb5db0cce93b06070d606970f38605f53aaa01 100755 (executable)
@@ -1,6 +1,8 @@
 #!/bin/bash
 if [ -f "BCEXMM.MAP" ]; then
-       mv BCEXMM.EXE bcexmm.ex0
-       mv bcexmm.ex0 bcexmm.exe
+       if [ -f "BCEXMM.EXE" ]; then
+               mv BCEXMM.EXE bcexmm.ex0
+               mv bcexmm.ex0 bcexmm.exe
+       fi
        mv BCEXMM.MAP bcexmm.meh
 fi