]> 4ch.mooo.com Git - 16.git/commitdiff
guard asm blocks
authorJonathan Campbell <jonathan@castus.tv>
Mon, 9 May 2016 02:31:57 +0000 (19:31 -0700)
committerJonathan Campbell <jonathan@castus.tv>
Mon, 9 May 2016 02:31:57 +0000 (19:31 -0700)
pcx2vrl
pcxsscut
src/lib/modex16.c
vrl2vrs
vrsdump

diff --git a/pcx2vrl b/pcx2vrl
index bd947e55158b82b4f9d900234745aca806cde60e..06179c758ee3353a54ef7bc76b2422c342d53dd7 100755 (executable)
Binary files a/pcx2vrl and b/pcx2vrl differ
index 1deec74dc0487422bfdb03acb381df671e83a049..2ce56d285d26ddb8a30e5f7bf2839df2bde1fa75 100755 (executable)
Binary files a/pcxsscut and b/pcxsscut differ
index f04391a95c55d89fb3838ca406b18a429c54c782..2d4c00242676ffd4401578c3fb6f024599199c21 100755 (executable)
@@ -399,6 +399,15 @@ modexCopyPageRegion(page_t *dest, page_t *src,
     byte right = rclip[(sx+width)&0x03];\r
 \r
     __asm {\r
+           PUSHF\r
+           PUSH ES\r
+           PUSH AX\r
+           PUSH BX\r
+           PUSH CX\r
+           PUSH DX\r
+           PUSH SI\r
+           PUSH DI\r
+\r
                MOV AX, SCREEN_SEG      ; work in the vga space\r
                MOV ES, AX            ;\r
                MOV DI, doffset  ;\r
@@ -447,6 +456,15 @@ modexCopyPageRegion(page_t *dest, page_t *src,
                MOV DX, GC_INDEX+1      ; go back to CPU data\r
                MOV AL, 0ffh        ; none from latches\r
                OUT DX, AL            ;\r
+\r
+           POP DI\r
+           POP SI\r
+           POP DX\r
+           POP CX\r
+           POP BX\r
+           POP AX\r
+           POP ES\r
+           POPF\r
     }\r
 }\r
 \r
@@ -1008,6 +1026,15 @@ void modexprintbig(page_t *page, word x, word y, word t, word col, word bgcol, c
        }\r
        //load the letter 'A'\r
        __asm {\r
+           PUSHF\r
+           PUSH ES\r
+           PUSH AX\r
+           PUSH BX\r
+           PUSH CX\r
+           PUSH DX\r
+           PUSH SI\r
+           PUSH DI\r
+\r
                MOV DI, addr\r
                MOV SI, o\r
                MOV ES, s\r
@@ -1022,6 +1049,15 @@ void modexprintbig(page_t *page, word x, word y, word t, word col, word bgcol, c
                INC DI\r
                DEC CX\r
                JNZ L1\r
+\r
+           POP DI\r
+           POP SI\r
+           POP DX\r
+           POP CX\r
+           POP BX\r
+           POP AX\r
+           POP ES\r
+           POPF\r
        }\r
 \r
                for(i=0; i<w; i++)\r
diff --git a/vrl2vrs b/vrl2vrs
index b67956b7baa37941b88ad79da1a2ff49c0c435a0..cee2d1d5ec2093825ded51e0e6c9b8b836e38ee9 100755 (executable)
Binary files a/vrl2vrs and b/vrl2vrs differ
diff --git a/vrsdump b/vrsdump
index dbaba30e42b8639969d3bdd4433243eb338adcbe..a75a903a84ae3d98973e3aecab4a6c08fce8a764 100755 (executable)
Binary files a/vrsdump and b/vrsdump differ