]> 4ch.mooo.com Git - 16.git/commitdiff
wwww
authorsparky4 <sparky4@cock.li>
Wed, 28 Oct 2015 04:10:35 +0000 (23:10 -0500)
committersparky4 <sparky4@cock.li>
Wed, 28 Oct 2015 04:10:35 +0000 (23:10 -0500)
15 files changed:
16.exe
bakapi.exe
exmmtest.exe
fontgfx.exe
maptest.exe
palettec.exe
palettel.exe
pcxtest.exe
pcxtest2.exe
planrpcx.exe
scroll.exe
src/lib/modex16.c
src/lib/modex16.h
test.exe
test2.exe

diff --git a/16.exe b/16.exe
index 55ee7f7cd6794042c1de69bcab991819cb8fbdd3..0927fe1f56032a74e645362b68903f6c51a98d58 100755 (executable)
Binary files a/16.exe and b/16.exe differ
index 8a860a99db07f161c121c5f24cb4dc0fa8a225ec..466745c883b15b6f9c11cff2420a6b32975eaac6 100755 (executable)
Binary files a/bakapi.exe and b/bakapi.exe differ
index df6852a761fbc47ca097859f54bc37abbce27685..9c5f0558f45b80c70e96ee8817bfad65906cd231 100755 (executable)
Binary files a/exmmtest.exe and b/exmmtest.exe differ
index 075cab20c4fb8c18a265911c5a1c0b699e79458a..49039750132426db2ec96271489150ef62884126 100755 (executable)
Binary files a/fontgfx.exe and b/fontgfx.exe differ
index 46ae023222aec15e1ed6a878eaeb21830351e22c..76efbe5985fae9e6b30aa1742ffb8dcb6ea64fd6 100755 (executable)
Binary files a/maptest.exe and b/maptest.exe differ
index 4afbc3340c3b40c673bf9c62dbd8806e45727042..c1a30ac57bd891fecd4f329c4a9518362e294df7 100755 (executable)
Binary files a/palettec.exe and b/palettec.exe differ
index ad9fc26f036f0dd5f2315cd4a2c7a07cfcd10b7b..9dc86ef6fcbbbc7bf2f14c9fa492068f0c9e673d 100755 (executable)
Binary files a/palettel.exe and b/palettel.exe differ
index fcd37c8012d895a0e12f2150e0d650bea1044882..01b317fed107587b276bac24fb93c0f199734b6e 100755 (executable)
Binary files a/pcxtest.exe and b/pcxtest.exe differ
index c8dbaa5cc080f09fbbf068e449c5503c7f9c292a..4e01e76c54b80996d5ede1f00a3dab4f68cebe5c 100755 (executable)
Binary files a/pcxtest2.exe and b/pcxtest2.exe differ
index a030050de1dd56cc5abdf46cd471b030b45f058f..8a996516a1d49222e44ac4c6179b27e1400cdae9 100755 (executable)
Binary files a/planrpcx.exe and b/planrpcx.exe differ
index c8f6cb5d285ea672fb70c79636204c50d60d80e4..48acb9282156fda0d89ae809c184c2fa0fb8b6d6 100755 (executable)
Binary files a/scroll.exe and b/scroll.exe differ
index 5cec70c919a773f2332ee697b7da5937da3c1ff7..e77d5c1b7ef47c66ae85f5cc47617e7ae1070988 100755 (executable)
@@ -395,6 +395,7 @@ modexClearRegion(page_t *page, int x, int y, int w, int h, byte  color) {
 }\r
 \r
 //TODO! ADD CLIPPING!!\r
+//memory management needs to be added\r
 //void\r
 //modexDrawBmpRegion   (page_t *page, int x, int y, int rx, int ry, int rw, int rh, bitmap_t *bmp)\r
 void modexDrawPBufRegion       (page_t *page, int x, int y, int rx, int ry, int rw, int rh, planar_buf_t *p, boolean sprite)\r
@@ -438,7 +439,8 @@ void modexDrawPBufRegion    (page_t *page, int x, int y, int rx, int ry, int rw, in
 //     _nfree(buff);\r
 }\r
 \r
-/*void\r
+/*temp*/\r
+void\r
 DrawPBuf(page_t *page, int x, int y, planar_buf_t *p, boolean sprite)\r
 {\r
        int plane;\r
@@ -478,7 +480,7 @@ DrawPBuf(page_t *page, int x, int y, planar_buf_t *p, boolean sprite)
                y=py;\r
        }\r
 //     _nfree(buff);\r
-}*/\r
+}\r
 \r
 void\r
 oldDrawBmp(byte far* page, int x, int y, bitmap_t *bmp, byte sprite)\r
@@ -574,100 +576,17 @@ modexDrawBmpRegion(page_t *page, int x, int y,
     }\r
 }\r
 \r
-void\r
-modexDrawPlanarBuf(page_t *page, int x, int y, planar_buf_t *bmp) {\r
-    /* TODO - adapt from test code */\r
-        int plane;\r
-        for(plane=0; plane < 4; plane++)\r
-        {\r
-                //fack\r
-        }\r
-}\r
-\r
-\r
 void\r
 modexDrawSprite(page_t *page, int x, int y, bitmap_t *bmp) {\r
     /* draw the whole sprite */\r
     modexDrawSpriteRegion(page, x, y, 0, 0, bmp->width, bmp->height, bmp);\r
 }\r
 \r
-/*void\r
-modexDrawSpriteRegion(page_t *page, int x, int y,\r
-                      int rx, int ry, int rw, int rh, bitmap_t *bmp) {\r
-    word poffset = (word)page->data + y*(page->width/4) + x/4;\r
-    byte *data = bmp->data;//+bmp->offset;\r
-    word bmpOffset = (word) data + ry * bmp->width + rx;\r
-    word width = rw;\r
-    word height = rh;\r
-    byte plane = 1 << ((byte) x & 0x03);\r
-    word scanCount = width/4 + (width%4 ? 1 :0);\r
-    word nextPageRow = page->width/4 - scanCount;\r
-    word nextBmpRow = (word) bmp->width - width;\r
-    word rowCounter;\r
-    byte planeCounter = 4;\r
-\r
-    __asm {\r
-                MOV AX, SCREEN_SEG      ; go to the VGA memory\r
-                MOV ES, AX\r
-\r
-                MOV DX, SC_INDEX        ; point at the map mask register\r
-                MOV AL, MAP_MASK        ;\r
-                OUT DX, AL              ;\r
-\r
-        PLANE_LOOP:\r
-                MOV DX, SC_DATA         ; select the current plane\r
-                MOV AL, plane           ;\r
-                OUT DX, AL              ;\r
-\r
-                ;-- begin plane painting\r
-                MOV AX, height          ; start the row counter\r
-                MOV rowCounter, AX      ;\r
-                MOV DI, poffset         ; go to the first pixel\r
-                MOV SI, bmpOffset       ; go to the bmp pixel\r
-        ROW_LOOP:\r
-                MOV CX, width           ; count the columns\r
-        SCAN_LOOP:\r
-                LODSB\r
-                DEC SI\r
-                CMP AL, 0\r
-                JNE DRAW_PIXEL          ; draw non-zero pixels\r
-\r
-                INC DI                  ; skip the transparent pixel\r
-                ADD SI, 1\r
-                JMP NEXT_PIXEL\r
-        DRAW_PIXEL:\r
-                MOVSB                   ; copy the pixel\r
-        NEXT_PIXEL:\r
-                SUB CX, 3               ; we skip the next 3\r
-                ADD SI, 3               ; skip the bmp pixels\r
-                LOOP SCAN_LOOP          ; finish the scan\r
-\r
-                MOV AX, nextPageRow\r
-                ADD DI, AX              ; go to the next row on screen\r
-                MOV AX, nextBmpRow\r
-                ADD SI, AX              ; go to the next row on bmp\r
-\r
-                DEC rowCounter\r
-                JNZ ROW_LOOP            ; do all the rows\r
-                ;-- end plane painting\r
-\r
-                MOV AL, plane           ; advance to the next plane\r
-                SHL AL, 1               ;\r
-                AND AL, 0x0f            ; mask the plane properly\r
-                MOV plane, AL           ; store the plane\r
-\r
-                INC bmpOffset           ; start bmp at the right spot\r
-\r
-                DEC planeCounter\r
-                JNZ PLANE_LOOP          ; do all 4 planes\r
-    }\r
-}//backup!*/\r
-\r
 void\r
 modexDrawSpriteRegion(page_t *page, int x, int y,\r
                       int rx, int ry, int rw, int rh, bitmap_t *bmp) {\r
     word poffset = (word)page->data + y*(page->width/4) + x/4;\r
-    byte huge *data = bmp->data;//+bmp->offset;\r
+    byte *data = bmp->data;//+bmp->offset;\r
     word bmpOffset = (word) data + ry * bmp->width + rx;\r
     word width = rw;\r
     word height = rh;\r
index a02112134b98ebb133d087ab79bf8c92cc50e00d..5b0d82b0b822f2ccdfc3c9c35715f009a694aeb6 100755 (executable)
@@ -71,7 +71,7 @@ void modexPanPage(page_t *page, int dx, int dy);
 void modexSelectPlane(byte plane);
 void modexClearRegion(page_t *page, int x, int y, int w, int h, byte color);
 void modexDrawPBufRegion(page_t *page, int x, int y, int rx, int ry, int rw, int rh, planar_buf_t *p, boolean sprite);
-void modexDrawPBuf(page_t *page, int x, int y, planar_buf_t *p, boolean sprite);
+void modexDrawPBuf(page_t *page, int x, int y, planar_buf_t *p, boolean sprite); /*temp*/
 void oldDrawBmp(byte far* page, int x, int y, bitmap_t *bmp, byte sprite);
 void modexDrawBmp(page_t *page, int x, int y, bitmap_t *bmp);
 void modexDrawBmpRegion(page_t *page, int x, int y, int rx, int ry, int rw, int rh, bitmap_t *bmp);
index 509de6941e9643bcc297e9b78f46c0d41fa3ca73..18b670ef36499a607197c09b08fe7282c4039c92 100755 (executable)
Binary files a/test.exe and b/test.exe differ
index 9d9fa280ee6fe11eb4dff8af5cf331bc719098e5..7bb49f12f582ff6f0b5fd9f1d055a5fe9b664d15 100755 (executable)
Binary files a/test2.exe and b/test2.exe differ