OSDN Git Service

something else broke when i worked on this
authorsparky4 <sparky4@cock.li>
Fri, 3 Feb 2017 19:30:10 +0000 (13:30 -0600)
committersparky4 <sparky4@cock.li>
Fri, 3 Feb 2017 19:30:10 +0000 (13:30 -0600)
16 files changed:
MEMINFO.16B [deleted file]
ZCROLL.L16
makefile
src/lib/16_enti.c
src/lib/16_enti.h
src/lib/16_in.h
src/lib/16_spri.c [moved from src/lib/16_sprit.c with 96% similarity]
src/lib/16_spri.h [moved from src/lib/16_sprit.h with 100% similarity]
src/lib/16_tdef.h
src/lib/16_vl.c
src/lib/scroll16.c
src/lib/scroll16.h
src/scroll.c
src/tesuto.h
src/vrstest.c
src/zcroll.c

diff --git a/MEMINFO.16B b/MEMINFO.16B
deleted file mode 100755 (executable)
index e69de29..0000000
index 2713cd7..5bd0bdd 100755 (executable)
@@ -1,22 +1,23 @@
 \r
 Project 16 zcroll.exe. This is just a test file!\r
-version Feb  3 2017 10:20:45\r
+version Feb  3 2017 13:00:59\r
 [0]txy: 0x0    [1]txy: 0x0\r
 \r
 player vars:\r
-       xy: 160x128     txy: 20x8       triggxy: 21x8   value: 1\r
-       hp: 4   q: 1    info.dir: 2     d: 2    pdir: 3\r
-       delay=1\r
+       xy: 160x128     txy: 10x8       triggxy: 10x9   value: 0\r
+       hp: 4   q: 1    info.dir: 2     d: 2    dire: 30        pdir: 0\r
+       delay=0\r
 \r
 VL_PrintmodexmemInfo:\r
   Virtual Screen: 352x272      Tile: 22x17=((Virtual Screen)/16)\r
          Screen: 320x240       Tile: 20x15=((Screen)/16)\r
   Free Video Memory: 767\r
-  page [0]=(a000:0028) size=23936      w=352  h=272 sw=320  sh=240 pi=1408\r
-       [1]=(a000:5da8) size=23936      w=352  h=272 sw=320  sh=240 pi=1408\r
-       [2]=(a000:bb28) size=8448       w=352  h=96  sw=352  sh=96  pi=1408\r
-       [3]=(a000:dc28) size=8448       w=352  h=96  sw=352  sh=96  pi=1408\r
-gvar.video.r=0 gvar.video.bgps=1 \r
+  page [0]=(a000:0000) size=23936      w=352  h=272 sw=320  sh=240 pi=1408\r
+       [1]=(a000:5d80) size=23936      w=352  h=272 sw=320  sh=240 pi=1408\r
+       [2]=(a000:bb00) size=8448       w=352  h=96  sw=352  sh=96  pi=1408\r
+       [3]=(a000:dc00) size=8448       w=352  h=96  sw=352  sh=96  pi=1408\r
+gvar.video:\r
+ r=0 bgps=1 \r
 \r
 detected CPU type: 80386 or newer\r
 detected FPU type: 80387\r
index 9cf9bfc..0aa855f 100755 (executable)
--- a/makefile
+++ b/makefile
@@ -124,7 +124,7 @@ LIBFLAGS=$(WLIBQ) -b -n
 #
 VGMSNDOBJ = vgmSnd.$(OBJ) 16_snd.$(OBJ)
 OLDLIBOBJS=bitmap.$(OBJ) 16render.$(OBJ)
-GFXLIBOBJS = 16_vl.$(OBJ) 16text.$(OBJ) bakapee.$(OBJ) scroll16.$(OBJ) 16_vrs.$(OBJ) 16_sprit.$(OBJ) $(OLDLIBOBJS)
+GFXLIBOBJS = 16_vl.$(OBJ) 16text.$(OBJ) bakapee.$(OBJ) scroll16.$(OBJ) 16_vrs.$(OBJ) 16_spri.$(OBJ) $(OLDLIBOBJS)
 16LIBOBJS = 16_mm.$(OBJ) 16_pm.$(OBJ) 16_ca.$(OBJ) 16_tail.$(OBJ) 16_in.$(OBJ) 16_head.$(OBJ) 16_dbg.$(OBJ) kitten.$(OBJ) 16_hc.$(OBJ) 16_wcpu.$(OBJ) 16_timer.$(OBJ) jsmn.$(OBJ) 16_map.$(OBJ) 16text.$(OBJ) 16_enti.$(OBJ)
 DOSLIBOBJ = adlib.$(OBJ) 8254.$(OBJ) 8259.$(OBJ) dos.$(OBJ) cpu.$(OBJ)
 !ifeq DEBUGSERIAL 1
@@ -325,7 +325,7 @@ bakapee.$(OBJ):$(SRCLIB)/bakapee.c $(SRCLIB)/bakapee.h
 16render.$(OBJ):$(SRCLIB)/16render.c $(SRCLIB)/16render.h
 16planar.$(OBJ):$(MODEXLIB16)/16planar.c $(MODEXLIB16)/16planar.h
 16_vrs.$(OBJ): $(SRCLIB)/16_vrs.c $(SRCLIB)/16_vrs.h $(DOSLIB)
-16_sprit.$(OBJ):$(SRCLIB)/16_sprit.c $(SRCLIB)/16_sprit.h
+16_spri.$(OBJ):$(SRCLIB)/16_spri.c $(SRCLIB)/16_spri.h
 bitmap.$(OBJ): $(SRCLIB)/bitmap.c $(SRCLIB)/bitmap.h
 planar.$(OBJ): $(SRCLIB)/planar.c $(SRCLIB)/planar.h
 scroll16.$(OBJ):$(SRCLIB)/scroll16.c $(SRCLIB)/scroll16.h
index 310aaab..4768a29 100755 (executable)
@@ -31,15 +31,15 @@ void EN_initentity(entity_t *enti, video_t *video)
        enti->triggerx = enti->tx;\r
        enti->triggery = enti->ty+1;    //south\r
 \r
-       enti->q = 1;\r
-       enti->d =2;\r
-       enti->hp=4;\r
-       enti->speed=4;\r
+       enti->q =               1;//loop var\r
+       enti->d =               2;//dir var\r
+       enti->hp =              4;//hit points\r
+       enti->speed =   4;//walkspeed\r
        enti->persist_aniframe = enti->q;\r
        enti->spt=(TILEWH/(enti->speed));       //speed per tile wwww\r
-       enti->pred = enti->d;\r
-       enti->overdraww=0;\r
-       enti->overdrawh=4;\r
+       enti->pred=enti->d;//previous dir\r
+       enti->overdraww =       0;\r
+       enti->overdrawh =       4;\r
 \r
        VL_Initofs(video);\r
 \r
@@ -69,6 +69,21 @@ void EN_initentity(entity_t *enti, video_t *video)
 void EN_initplayer(player_t *player, word pn, video_t *video)\r
 {\r
        EN_initentity(&player[pn].enti, video);\r
+       player[pn].enti.spri->x = player[0].enti.x-4;\r
+       player[pn].enti.spri->y = player[0].enti.y-16;\r
+       player[pn].walktype=0;\r
+       player[pn].enti.dire=30;\r
+\r
+       video->sprifilei =      set_anim_by_id(player[pn].enti.spri, player[pn].enti.dire);\r
+       animate_spri(&player[pn].enti, video);\r
+\r
+       //run to fully init sprite\r
+       //modexCopyPageRegion(&video->page[0], &video->page[1], 0, player[pn].enti.y, 0, player[pn].enti.y, video->page[0].width, 40);\r
+       modexCopyPageRegion(&video->page[0], &video->page[1], 0, 0, 0, 0, video->page[0].width, video->page[0].height);\r
+       animate_spri(&player[pn].enti, video);\r
+       //\r
+\r
+       //print_anim_ids(player[0].enti.spri);\r
 /*     player[0].info.x = player[0].tx;\r
        player[0].info.xaxis = player[0].tx*TILEWH;\r
        player[0].info.y = player[0].ty;\r
index 7f18b15..d317957 100755 (executable)
@@ -23,8 +23,8 @@
 #ifndef __16_NPC__
 #define __16_NPC__
 
-#include "src/lib/16_sprit.h"
 #include "src/lib/16_head.h"
+#include "src/lib/16_spri.h"
 #include "src/lib/16_in.h"
 
 //moved to 16_tdef.h
index b84db1b..9bcec25 100755 (executable)
@@ -32,7 +32,7 @@
 #include "src/lib/16_timer.h"\r
 #ifdef __WATCOMC__     //borland C BCEXMM.EXE\r
 #include "src/lib/16_dbg.h"\r
-#include "src/lib/16_sprit.h"\r
+#include "src/lib/16_spri.h"\r
 #include "src/lib/16_enti.h"\r
 //#include "src/lib/bitmap.h"  //old format\r
 #endif\r
similarity index 96%
rename from src/lib/16_sprit.c
rename to src/lib/16_spri.c
index 9f699e1..9474db2 100755 (executable)
@@ -20,7 +20,7 @@
  *\r
  */\r
 \r
-#include "src/lib/16_sprit.h"\r
+#include "src/lib/16_spri.h"\r
 \r
 char* get_curr_anim_name(struct sprite *spri)\r
 {\r
similarity index 100%
rename from src/lib/16_sprit.h
rename to src/lib/16_spri.h
index d8ed876..b9889a2 100755 (executable)
@@ -283,7 +283,7 @@ typedef struct
        sword __near sprifilei;         //player file's i\r
        nibble __near p;                        //render page number\r
        nibble __near sp;                       //show page number(for showpage)\r
-       boolean __near r;                       //page flip, showpage, or render        if true\r
+       boolean __near dorender;        //page flip, showpage, or render        if true\r
        word pr[MAXPAGE][4];    //render sections of pages (this is supposed to be set up to draw sections of the screen if updated)\r
 \r
        nibble sfip;            //shinku_fps_indicator_page; // we're on page 1 now, shinku(). follow along please or it will not be visible.\r
index 63b3611..169bbf8 100755 (executable)
@@ -303,8 +303,8 @@ void modexHiganbanaPageSetup(video_t *video)
        (video->page[3]) = modexNextPageFlexibleSize(&(video->page[2]), video->page[0].width, 96);      video->num_of_pages++;\r
        modexCalcVmemRemain(video);\r
 \r
-       video->sp=video->p=0;   //showpage\r
-       video->r=1;                     //render\r
+       video->sp=video->p =    0;      //showpage\r
+       video->dorender =       1;                      //render\r
        video->vh=video->page[0].height+video->page[1].height+video->page[2].height+video->page[3].height;\r
 \r
        VL_Initofs(video);\r
index 45f4709..77d3d4d 100755 (executable)
 #include "src/lib/scroll16.h"\r
 \r
 //#define INC_PER_FRAME if(player[pn].enti.q&1) player[pn].enti.persist_aniframe++; if(player[pn].enti.persist_aniframe>4) player[pn].enti.persist_aniframe = 1;\r
-#define ZC_WALKR       ScrollRight(pip, player, 3, pn); \\r
-                               ScrollRight(pip, player, 2, pn); \\r
-                               mapScrollRight(pip, player, (0), pn); \\r
-if(pip[0].video->bgps) mapScrollRight(pip, player, (1), pn);\r
-#define ZC_WALKL       ScrollLeft(pip, player, 3, pn); \\r
-                               ScrollLeft(pip, player, 2, pn); \\r
-                               mapScrollLeft(pip, player, (0), pn); \\r
-if(pip[0].video->bgps) mapScrollLeft(pip, player, (1), pn);\r
-#define ZC_WALKD       ScrollDown(pip, player, 3, pn); \\r
-                               ScrollDown(pip, player, 2, pn); \\r
-                               mapScrollDown(pip, player, (0), pn); \\r
-if(pip[0].video->bgps) mapScrollDown(pip, player, (1), pn);\r
-#define ZC_WALKU       ScrollUp(pip, player, 3, pn); \\r
-                               ScrollUp(pip, player, 2, pn); \\r
-                               mapScrollUp(pip, player, (0), pn); \\r
-if(pip[0].video->bgps) mapScrollUp(pip, player, (1), pn);\r
 \r
 void ZC_walk(map_view_t *pip, player_t *player, word pn)\r
 {\r
@@ -58,8 +42,8 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                player[pn].walktype=2;\r
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
-                                       ZC_animatePlayer(pip, player, pn, 2);\r
-                                       ZC_WALKR\r
+                                       ZC_animatePlayer(pip, player, pn);\r
+                                       ZC_mapScroll(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                        //0000pip[0].video->clk = ((*clockw)-pip[0].video->startclk)/18.2;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.tx++; }\r
@@ -70,14 +54,14 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
                                        player[pn].enti.x+=(player[pn].enti.speed);\r
-                                       ZC_animatePlayer(pip, player, pn, 1);\r
+                                       ZC_animatePlayer(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.tx++; }\r
                        }\r
                        else\r
                        {\r
                                player[pn].walktype=0;\r
-                               ZC_animatePlayer(pip, player, pn, 0);\r
+                               ZC_animatePlayer(pip, player, pn);\r
                                player[pn].enti.d = 2;\r
                        }\r
                        player[pn].enti.triggerx = player[pn].enti.tx+1;\r
@@ -91,8 +75,8 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                player[pn].walktype=2;\r
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
-                                       ZC_animatePlayer(pip, player, pn, 2);\r
-                                       ZC_WALKL\r
+                                       ZC_animatePlayer(pip, player, pn);\r
+                                       ZC_mapScroll(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                        //0000pip[0].video->clk = ((*clockw)-pip[0].video->startclk)/18.2;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.tx--; }\r
@@ -103,14 +87,14 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
                                        player[pn].enti.x-=(player[pn].enti.speed);\r
-                                       ZC_animatePlayer(pip, player, pn, 1);\r
+                                       ZC_animatePlayer(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.tx--; }\r
                        }\r
                        else\r
                        {\r
                                player[pn].walktype=0;\r
-                               ZC_animatePlayer(pip, player, pn, 0);\r
+                               ZC_animatePlayer(pip, player, pn);\r
                                player[pn].enti.d = 2;\r
                        }\r
                        player[pn].enti.triggerx = player[pn].enti.tx-1;\r
@@ -124,8 +108,8 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                player[pn].walktype=2;\r
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
-                                       ZC_animatePlayer(pip, player, pn, 2);\r
-                                       ZC_WALKD\r
+                                       ZC_animatePlayer(pip, player, pn);\r
+                                       ZC_mapScroll(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                        //0000pip[0].video->clk = ((*clockw)-pip[0].video->startclk)/18.2;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.ty++; }\r
@@ -136,14 +120,14 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
                                        player[pn].enti.y+=(player[pn].enti.speed);\r
-                                       ZC_animatePlayer(pip, player, pn, 1);\r
+                                       ZC_animatePlayer(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.ty++; }\r
                        }\r
                        else\r
                        {\r
                                player[pn].walktype=0;\r
-                               ZC_animatePlayer(pip, player, pn, 0);\r
+                               ZC_animatePlayer(pip, player, pn);\r
                                player[pn].enti.d = 2;\r
                        }\r
                        player[pn].enti.triggerx = player[pn].enti.tx;\r
@@ -157,8 +141,8 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                player[pn].walktype=2;\r
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
-                                       ZC_animatePlayer(pip, player, pn, 2);\r
-                                       ZC_WALKU\r
+                                       ZC_animatePlayer(pip, player, pn);\r
+                                       ZC_mapScroll(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                        //0000pip[0].video->clk = ((*clockw)-pip[0].video->startclk)/18.2;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.ty--; }\r
@@ -169,14 +153,14 @@ void ZC_walk(map_view_t *pip, player_t *player, word pn)
                                if(player[pn].enti.q<=player[pn].enti.spt)\r
                                {\r
                                        player[pn].enti.y-=(player[pn].enti.speed);\r
-                                       ZC_animatePlayer(pip, player, pn, 1);\r
+                                       ZC_animatePlayer(pip, player, pn);\r
                                        player[pn].enti.q++;\r
                                } else { player[pn].enti.q = 1; player[pn].enti.d = 2; player[pn].enti.ty--; }\r
                        }\r
                        else\r
                        {\r
                                player[pn].walktype=0;\r
-                               ZC_animatePlayer(pip, player, pn, 0);\r
+                               ZC_animatePlayer(pip, player, pn);\r
                                player[pn].enti.d = 2;\r
                        }\r
                        player[pn].enti.triggerx = player[pn].enti.tx;\r
@@ -285,7 +269,6 @@ void ZC_MVInit(map_view_t *pip, int tx, int ty)
 \r
 void ZC_ShowMV(map_view_t *moo, boolean vsync, boolean sr)\r
 {\r
-       //VL_ShowPage(moo[moo[0].video->sp].page, vsync, sr);\r
        word high_address, low_address, offset;\r
        byte crtcOffset;\r
 \r
@@ -364,7 +347,7 @@ void near mapScrollRight(map_view_t *mv, player_t *player, word id, word plid)
 //             else\r
 //                     if(mv[0].video->bgps)\r
 //                             modexCopyPageRegion(mv[id].page, mv[0].page, x, 0, x, 0, mv[0].map->tiles->tileWidth, mv[0].page->height);\r
-       mv[0].video->r=1;\r
+       mv[0].video->dorender=1;\r
 }\r
 \r
 \r
@@ -386,7 +369,7 @@ void near mapScrollLeft(map_view_t *mv, player_t *player, word id, word plid)
 //             else\r
 //                     if(mv[0].video->bgps)\r
 //                             modexCopyPageRegion(mv[id].page, mv[0].page, x, 0, x, 0, mv[0].map->tiles->tileWidth, mv[0].page->height);\r
-       mv[0].video->r=1;\r
+       mv[0].video->dorender=1;\r
 }\r
 \r
 \r
@@ -408,7 +391,7 @@ void near mapScrollUp(map_view_t *mv, player_t *player, word id, word plid)
 //             else\r
 //                     if(mv[0].video->bgps)\r
 //                             modexCopyPageRegion(mv[id].page, mv[0].page, 0, y, 0, y, mv[0].page->width, mv[0].map->tiles->tileHeight);\r
-       mv[0].video->r=1;\r
+       mv[0].video->dorender=1;\r
 }\r
 \r
 \r
@@ -430,7 +413,7 @@ void near mapScrollDown(map_view_t *mv, player_t *player, word id, word plid)
 //             else\r
 //                     if(mv[0].video->bgps)\r
 //                             modexCopyPageRegion(mv[id].page, mv[0].page, 0, y, 0, y, mv[0].page->width, mv[0].map->tiles->tileHeight);\r
-       mv[0].video->r=1;\r
+       mv[0].video->dorender=1;\r
 }\r
 \r
 void ZC_mapScroll(map_view_t *mv, player_t *player, word pn)\r
@@ -446,13 +429,13 @@ void ZC_mapScroll(map_view_t *mv, player_t *player, word pn)
                                mapScrollRight(mv, player, (0), pn);\r
                        if(b)   mapScrollRight(mv, player, (1), pn);\r
                break;\r
-               case 4://left\r
+               case 1://left\r
                                ScrollLeft(mv, player, 3, pn);\r
                                ScrollLeft(mv, player, 2, pn);\r
                                mapScrollLeft(mv, player, (0), pn);\r
                        if(b)   mapScrollLeft(mv, player, (1), pn);\r
                break;\r
-               case 1://down\r
+               case 4://down\r
                                ScrollDown(mv, player, 3, pn);\r
                                ScrollDown(mv, player, 2, pn);\r
                                mapScrollDown(mv, player, (0), pn);\r
@@ -465,17 +448,26 @@ void ZC_mapScroll(map_view_t *mv, player_t *player, word pn)
                        if(b)   mapScrollUp(mv, player, (1), pn);\r
                break;\r
        }\r
-       printf("player[pn].enti.d=%u\n", player[pn].enti.d);\r
-       mv->video->r=1;\r
+       mv[0].video->dorender=1;\r
 }\r
 \r
 //===========================================================================\r
 //TODO: put player in starting position of assigned spot on map\r
 //default player position on the viewable map\r
-void ZC_playerXYpos(int x, int y, player_t *player, map_view_t *pip, nibble pn)\r
+void ZC_playerXYpos(int x, int y, player_t *player, map_view_t *pip, nibble pn, boolean defaultsw)\r
 {\r
-       player[pn].enti.tx = x + pip[0].tx + pip[0].page->ti.tilemidposscreenx;\r
-       player[pn].enti.ty = y + pip[0].ty + pip[0].page->ti.tilemidposscreeny;\r
+       player[pn].enti.tx = x + pip[0].tx;\r
+       player[pn].enti.ty = y + pip[0].ty;\r
+\r
+       switch(defaultsw)\r
+       {\r
+               case 1:\r
+                       player[pn].enti.tx += pip[0].page->ti.tilemidposscreenx;\r
+                       player[pn].enti.ty += pip[0].page->ti.tilemidposscreeny;\r
+               break;\r
+               case 0:\r
+               break;\r
+       }\r
 }\r
 //===========================================================================\r
 \r
@@ -542,14 +534,15 @@ void mapGoTo(map_view_t *mv, int tx, int ty)
        i=mv[0].ty * mv[0].map->width + mv[0].tx;\r
        for(ty=mv[0].ty-1; py < mv[0].page->sh+mv->dyThresh && ty < mv[0].map->height; ty++, py+=mv[0].map->tiles->tileHeight) {\r
                mapDrawWRow(&mv[0], tx-1, ty, py);\r
-               i+=mv->map->width - tx;\r
-       }\r
-       py=0;\r
-       i=mv[1].ty * mv[1].map->width + mv[1].tx;\r
-       for(ty=mv[1].ty-1; py < mv[1].page->sh+mv->dyThresh && ty < mv[1].map->height; ty++, py+=mv[1].map->tiles->tileHeight) {\r
                mapDrawWRow(&mv[1], tx-1, ty, py);\r
                i+=mv->map->width - tx;\r
        }\r
+//     py=0;\r
+//     i=mv[1].ty * mv[1].map->width + mv[1].tx;\r
+//     for(ty=mv[1].ty-1; py < mv[1].page->sh+mv->dyThresh && ty < mv[1].map->height; ty++, py+=mv[1].map->tiles->tileHeight) {\r
+//             mapDrawWRow(&mv[1], tx-1, ty, py);\r
+//             i+=mv->map->width - tx;\r
+//     }\r
        //if(mv[0].video->bgps) modexCopyPageRegion(mv[1].page, mv[0].page, 0, 0, 0, 0, mv[0].page->width, mv[0].page->height);\r
 }\r
 \r
@@ -712,7 +705,7 @@ void shinku(global_game_variables_t *gv)
        switch(gv->kurokku.fpscap)\r
        {\r
                case 0:\r
-                       modexprint(&(gv->video.page[0]), x, y+8, type, col, bgcol, "sanic!");\r
+                       //modexprint(&(gv->video.page[0]), x, y+8, type, col, bgcol, "sanic!");\r
                        gv->kurokku.frames_per_second=1;\r
                break;\r
                case 1:\r
@@ -723,7 +716,7 @@ void shinku(global_game_variables_t *gv)
                break;\r
        }\r
        //render!!\r
-       if(gv->video.r )\r
+       if(gv->video.dorender )\r
        {//r=1\r
                /*if(video->bgp s)\r
                {\r
@@ -732,20 +725,19 @@ void shinku(global_game_variables_t *gv)
                        //modexCopyPageRegion(&video->page[0], &video->page[1], enti->x, enti->y, 0, 0, 24, 32);\r
                }*/\r
                VL_ShowPage(&(gv->video.page[gv->video.sp]), gv->kurokku.fpscap, 0);\r
-               gv->video.r =!gv->video.r ;\r
+               gv->video.dorender =!gv->video.dorender ;\r
                //0000gv->video.tickclk = ((*clockw)-gv->video.startclk)/18.2;\r
-//     }\r
        }\r
 }\r
 \r
-void near ZC_animatePlayer(map_view_t *pip, player_t *player, word pn, sword scrollswitch)\r
+void near ZC_animatePlayer(map_view_t *pip, player_t *player, nibble pn)\r
 {\r
        sword x = player[pn].enti.x;\r
        sword y = player[pn].enti.y;\r
        sword qq,dd; //scroll offset\r
        player[pn].enti.dire=10; //direction\r
 \r
-       switch(scrollswitch)\r
+       switch(player[pn].walktype)\r
        {\r
                case 0:\r
                        dd = 0;\r
@@ -757,7 +749,7 @@ void near ZC_animatePlayer(map_view_t *pip, player_t *player, word pn, sword scr
                break;\r
                case 2:\r
                        dd = 1;\r
-                       qq = ((player[pn].enti.q)*(player[pn].enti.speed));\r
+                       qq = player[pn].enti.q*player[pn].enti.speed;\r
                break;\r
        }\r
        x-=4;\r
@@ -790,6 +782,7 @@ void near ZC_animatePlayer(map_view_t *pip, player_t *player, word pn, sword scr
        player[pn].enti.dire+=dd;\r
        if((player[pn].enti.q==1 && player[pn].enti.pred != player[pn].enti.d) || !dd)\r
        {\r
+               //0000printf("  q=%u    pred=%u d=%u    dd=%u\n", player[pn].enti.q, player[pn].enti.pred, player[pn].enti.d, dd);\r
                set_anim_by_id(player[pn].enti.spri, player[pn].enti.dire); //pip->video->sprifilei = set_anim_by_id(player[pn].enti.spri, player[pn].enti.dire);       if(pip->video->sprifilei == -1){ printf("ERROR! %u\n", player[pn].enti.dire); return; }\r
                player[pn].enti.pred = player[pn].enti.d;\r
        }\r
@@ -801,9 +794,9 @@ void near ZC_animatePlayer(map_view_t *pip, player_t *player, word pn, sword scr
        if(pip[0].video->bgps)\r
                modexCopyPageRegion(pip[0].page, pip[1].page, x-4, y-4, x-4, y-4, 28, 40);\r
        //draw sprite\r
-       animate_spri(&player[pn].enti, pip->video);\r
-//0000if(player[pn].enti.q<2) delay(200);\r
-       pip->video->r=1;\r
+       animate_spri(&player[pn].enti, pip[0].video);\r
+//0000if(player[pn].enti.q<4) delay(200);\r
+       pip[0].video->dorender = 1;\r
 }\r
 \r
 /*\r
index c789cc1..97759ac 100755 (executable)
@@ -34,7 +34,7 @@
 //#include "src/lib/16_map.h"  //new map stuff\r
 #include "src/lib/16_timer.h"\r
 #include "src/lib/wcpu/16_wcpu.h"\r
-#include "src/lib/16_sprit.h"\r
+#include "src/lib/16_spri.h"\r
 \r
 #include <hw/cpu/cpu.h>\r
 #include <hw/dos/dos.h>\r
@@ -63,6 +63,8 @@
 #define MAPW   40\r
 #define MAPH   30\r
 \r
+//===========================================================================//\r
+\r
        //if(player[0].enti.hp==0) printf("%d wwww\n", player[0].enti.y+8);\r
        //else printf("\nplayer[0].enti.y: %d\n", player[0].enti.y);\r
 //printf("gvar.video.p=%u ", gvar.video.p);\r
 //printf("&global_temp_status_text = %Fp\n", &global_temp_status_text);\r
 //printf("middle tile position: %dx", gvar.video.page[0].tilemidposscreenx);   printf("%d\n", gvar.video.page[0].tilemidposscreeny);\r
 //printf("     aniframe=%u", player[0].enti.persist_aniframe);\r
-#define SCROLLEXITMESG         printf("[0]txy: %dx%d   ", mv[1].tx, mv[1].ty); printf("[1]txy: %dx%d", mv[1].tx, mv[1].ty);\\r
+#define SCROLLEXITMESG         printf("[0]txy: %dx%d   ", mv[0].tx, mv[0].ty); printf("[1]txy: %dx%d", mv[1].tx, mv[1].ty);\\r
        printf("\n\n");\\r
        printf("player vars:\n");\\r
        printf("        xy: %dx%d", player[0].enti.x, player[0].enti.y); printf("       txy: %dx%d", player[0].enti.tx, player[0].enti.ty); printf("    triggxy: %dx%d", player[0].enti.triggerx, player[0].enti.triggery); printf("    value: %d\n", mv[1].map->data[(player[0].enti.triggerx-1)+(map.width*(player[0].enti.triggery-1))]);\\r
-       printf("        hp: %d", (player[0].enti.hp));  printf("        q: %d", player[0].enti.q);      printf("        info.dir: %d", player[0].info.dir);     printf("        d: %d ", player[0].enti.d);\\r
-               printf("        pdir: %d\n", player[0].pdir); printf("  delay=%u", player[0].enti.spri->delay);\\r
+       printf("        hp: %d", (player[0].enti.hp));  printf("        q: %u", player[0].enti.q);      printf("        info.dir: %u", player[0].info.dir);     printf("        d: %u", player[0].enti.d);      printf("        dire: %u", player[0].enti.dire);\\r
+               printf("        pdir: %u\n", player[0].pdir); printf("  delay=%u", player[0].enti.spri->delay);\\r
 printf("\n\n");\\r
        VL_PrintmodexmemInfo(&gvar.video);\\r
 \\r
-       printf("gvar.video.r=%u ", gvar.video.r);\\r
-       printf("gvar.video.bgps=%u ", gvar.video.bgps);\\r
+       printf("gvar.video:\n");\\r
+       printf(" r=%u ", gvar.video.dorender);\\r
+       printf("bgps=%u ", gvar.video.bgps);\\r
 printf("\n\n");\r
 \r
 extern boolean pagenorendermap, pagedelayrendermap;\r
@@ -104,7 +107,7 @@ void near mapScrollLeft(map_view_t *mv, player_t *player, word id, word plid);
 void near mapScrollUp(map_view_t *mv, player_t *player, word id, word plid);\r
 void near mapScrollDown(map_view_t *mv, player_t *player, word id, word plid);\r
 void ZC_mapScroll(map_view_t *mv, player_t *player, word pn);\r
-void ZC_playerXYpos(int x, int y, player_t *player, map_view_t *pip, nibble pn);\r
+void ZC_playerXYpos(int x, int y, player_t *player, map_view_t *pip, nibble pn, boolean defaultsw);\r
 sword chkmap(map_t *map, word q);\r
 void mapGoTo(map_view_t *mv, int tx, int ty);\r
 void ZC_mapinitMV(map_view_t *mv, int tx, int ty);\r
@@ -185,7 +188,7 @@ inline void near ScrollDown(map_view_t *mv, player_t *player, word id, word plid
 //sync\r
 void shinku(global_game_variables_t *gv);\r
 //animate the sprite\r
-void near ZC_animatePlayer(map_view_t *pip, player_t *player, word pn, sword scrollswitch);\r
+void near ZC_animatePlayer(map_view_t *pip, player_t *player, nibble pn);\r
 \r
 // Move an entity around. Should actually be in 16_entity\r
 boolean ZC_walk2(entity_t *ent, map_view_t *map_v);\r
index df818d6..9855756 100755 (executable)
@@ -118,10 +118,18 @@ void main(int argc, char *argv[])
        //TODO: LOAD map data and position the map in the middle of the screen if smaller then screen\r
        mapGoTo(&mv, 0, 0);\r
 \r
-       ZC_playerXYpos(0, 0, &player, &mv, 0);\r
+       ZC_playerXYpos(0, 0, &player, &mv, 0, 1);\r
        EN_initplayer(&player, 0, &gvar.video);\r
-       player[0].enti.spri->x = player[0].enti.x-4;\r
-       player[0].enti.spri->y = player[0].enti.y-16;\r
+       if (gvar.video.sprifilei == -1)\r
+       {\r
+#ifdef FADE\r
+               modexFadeOff(4, gpal);\r
+#endif\r
+               Quit(&gvar, "Wrong");\r
+#ifdef FADE\r
+               modexFadeOn(4, dpal);\r
+#endif\r
+       }\r
 \r
 #ifndef        SPRITE\r
        modexClearRegion(mv[0].page, player[0].enti.x, player[0].enti.y-TILEWH, 16, 32, 15);\r
index a4c9a9f..29a09d1 100755 (executable)
@@ -6,7 +6,7 @@
 #include "src/lib/16_vl.h"\r
 #include "src/lib/16_in.h"\r
 #include "src/lib/scroll16.h"\r
-#include "src/lib/16_sprit.h"\r
+#include "src/lib/16_spri.h"\r
 #include <hw/cpu/cpu.h>\r
 #include <hw/dos/dos.h>\r
 #include <hw/vga/vga.h>\r
index 8e20a4c..d006969 100755 (executable)
@@ -23,7 +23,7 @@
 #include "src/lib/16_head.h"\r
 #include "src/lib/16_tail.h"\r
 #include "src/lib/16_vl.h"\r
-#include "src/lib/16_sprit.h"\r
+#include "src/lib/16_spri.h"\r
 #include "src/lib/16_pm.h"\r
 #include "src/lib/16_ca.h"\r
 #include "src/lib/16_mm.h"\r
index 582920c..dc169fe 100755 (executable)
@@ -127,14 +127,8 @@ void main(int argc, char *argv[])
        //TODO: LOAD map data and position the map in the middle of the screen if smaller then screen\r
        mapGoTo(&mv, 0, 0);\r
 \r
-       ZC_playerXYpos(0, 0, &player, &mv, 0);\r
+       ZC_playerXYpos(0, 0, &player, &mv, 0, 1);\r
        EN_initplayer(&player, 0, &gvar.video);\r
-       player[0].enti.spri->x = player[0].enti.x-4;\r
-       player[0].enti.spri->y = player[0].enti.y-16;\r
-\r
-       player[0].enti.dire=31;\r
-       gvar.video.sprifilei = set_anim_by_id(player[0].enti.spri, player[0].enti.dire);\r
-       //print_anim_ids(player[0].enti.spri);\r
        if (gvar.video.sprifilei == -1)\r
        {\r
 #ifdef FADE\r
@@ -147,8 +141,8 @@ void main(int argc, char *argv[])
        }\r
 \r
 //     while(!IN_KeyDown(sc_Escape) && !IN_KeyDown(sc_Space) && !IN_KeyDown(sc_Enter)){ FUNCTIONKEYSHOWMV }\r
-       VL_ShowPage(mv[0].page, 0, 0);\r
-       animate_spri(&(player[0].enti), &gvar.video);\r
+//     VL_ShowPage(mv[0].page, gvar.kurokku.fpscap, 0);\r
+       ZC_ShowMV(&mv, gvar.kurokku.fpscap, 0);\r
 #ifdef FADE\r
        modexFadeOn(4, gpal);\r
 #endif\r