OSDN Git Service

====----==== this is a messed up build that contains a busted 0.exe pan page system
authorsparky4 <sparky4@cock.li>
Tue, 31 Jan 2017 00:52:45 +0000 (18:52 -0600)
committersparky4 <sparky4@cock.li>
Tue, 31 Jan 2017 00:52:45 +0000 (18:52 -0600)
65 files changed:
16/src/bakapi4b.c [moved from src/bakapi4b.c with 100% similarity]
16/src/planrpcx.c [moved from src/planrpcx.c with 100% similarity]
16/src/vgacamm.c [moved from src/vgacamm.c with 100% similarity]
DEBUG.16B [new file with mode: 0755]
DEBUG.16W [new file with mode: 0755]
HEAP.16W [new file with mode: 0755]
MEMINFO.16B [new file with mode: 0755]
MMDUMP.16B [new file with mode: 0755]
MMDUMP.16W [new file with mode: 0755]
bcexmm.dsk
bcexmm.exe
bcexmm.prj
makefile
src/0.c
src/16.c
src/16.h
src/bakapi.h
src/emsdump.c
src/exmmtest.c
src/fmemtest.c
src/fontgfx.c
src/fonttest.c
src/inputest.c
src/lib/16_hc.c
src/lib/16_hc.h
src/lib/16_head.c
src/lib/16_head.h
src/lib/16_map.c
src/lib/16_map.h
src/lib/16_pm.c
src/lib/16_pm.h
src/lib/16_snd.c
src/lib/16_snd.h
src/lib/16_sprit.c
src/lib/16_sprit.h
src/lib/16_t.h
src/lib/16_tail.c
src/lib/16_tail.h
src/lib/16_tdef.h
src/lib/16_timer.c
src/lib/16_timer.h
src/lib/16_vl.c
src/lib/16_vrs.c
src/lib/16_vrs.h
src/lib/16render.c
src/lib/16render.h
src/lib/16text.c
src/lib/16text.h
src/lib/bitmap.c
src/lib/bitmap.h
src/lib/doslib
src/lib/scroll16.c
src/lib/scroll16.h
src/maptest.c
src/palettec.c
src/palettel.c
src/palllist.c
src/pcxtest.c
src/pcxtest2.c
src/scroll.c
src/sountest.c
src/test2.c
src/vgmtest.c
src/vrstest.c
src/zcroll.c

similarity index 100%
rename from src/bakapi4b.c
rename to 16/src/bakapi4b.c
similarity index 100%
rename from src/planrpcx.c
rename to 16/src/planrpcx.c
similarity index 100%
rename from src/vgacamm.c
rename to 16/src/vgacamm.c
diff --git a/DEBUG.16B b/DEBUG.16B
new file mode 100755 (executable)
index 0000000..6b4d34f
--- /dev/null
+++ b/DEBUG.16B
@@ -0,0 +1,210 @@
+\e[0mSeg:0      Size:4620       Owner:0x0\r
+\e[41;31m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m\e[42;32m0\r
+\e[0m\e[0mSeg:120c       Size:256        Owner:0x24e5\r
+\e[44;34m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:130c       Size:256        Owner:0x22ea\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:140c       Size:256        Owner:0x22ec\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:150c       Size:256        Owner:0x22ee\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:160c       Size:256        Owner:0x22f0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:170c       Size:256        Owner:0x22f2\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:180c       Size:256        Owner:0x22f4\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:190c       Size:256        Owner:0x22f6\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:1a0c       Size:256        Owner:0x22f8\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:1b0c       Size:256        Owner:0x22fa\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:1c0c       Size:256        Owner:0x22fc\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:1d0c       Size:256        Owner:0x22fe\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:1e0c       Size:256        Owner:0x2300\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:1f0c       Size:256        Owner:0x2302\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:200c       Size:256        Owner:0x2304\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:210c       Size:256        Owner:0x2306\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:220c       Size:256        Owner:0x2308\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:230c       Size:256        Owner:0x230a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:240c       Size:256        Owner:0x230c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:250c       Size:256        Owner:0x230e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:260c       Size:256        Owner:0x2310\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:270c       Size:256        Owner:0x2312\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:280c       Size:256        Owner:0x2314\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:290c       Size:256        Owner:0x2316\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2a0c       Size:256        Owner:0x2318\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2b0c       Size:256        Owner:0x231a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2c0c       Size:256        Owner:0x231c\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2d0c       Size:256        Owner:0x231e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2e0c       Size:256        Owner:0x2320\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2f0c       Size:256        Owner:0x2322\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:300c       Size:256        Owner:0x2324\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:310c       Size:256        Owner:0x2326\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:320c       Size:256        Owner:0x2328\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:330c       Size:256        Owner:0x232a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:340c       Size:256        Owner:0x232c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:350c       Size:256        Owner:0x232e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:360c       Size:256        Owner:0x2330\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:370c       Size:256        Owner:0x2332\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:380c       Size:256        Owner:0x2334\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:390c       Size:256        Owner:0x2336\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3a0c       Size:256        Owner:0x2338\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3b0c       Size:256        Owner:0x233a\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3c0c       Size:256        Owner:0x233c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3d0c       Size:256        Owner:0x233e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3e0c       Size:256        Owner:0x2340\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3f0c       Size:256        Owner:0x2342\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:400c       Size:256        Owner:0x2344\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:410c       Size:256        Owner:0x2346\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:420c       Size:256        Owner:0x2348\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:430c       Size:256        Owner:0x234a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:440c       Size:256        Owner:0x234c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:450c       Size:256        Owner:0x234e\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:460c       Size:256        Owner:0x2350\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:470c       Size:256        Owner:0x2352\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:480c       Size:256        Owner:0x2354\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:490c       Size:256        Owner:0x2356\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4a0c       Size:256        Owner:0x2358\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4b0c       Size:256        Owner:0x235a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4c0c       Size:256        Owner:0x235c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4d0c       Size:256        Owner:0x235e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4e0c       Size:256        Owner:0x2360\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4f0c       Size:256        Owner:0x2362\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:500c       Size:256        Owner:0x2364\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:510c       Size:256        Owner:0x2366\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:520c       Size:256        Owner:0x2368\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:530c       Size:256        Owner:0x236a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:540c       Size:256        Owner:0x236c\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:550c       Size:256        Owner:0x236e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:560c       Size:256        Owner:0x2370\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:570c       Size:256        Owner:0x2372\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:580c       Size:256        Owner:0x2374\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:590c       Size:256        Owner:0x2376\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5a0c       Size:256        Owner:0x2378\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5b0c       Size:256        Owner:0x237a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5c0c       Size:256        Owner:0x237c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5d0c       Size:256        Owner:0x237e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5e0c       Size:256        Owner:0x2380\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5f0c       Size:256        Owner:0x2382\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:600c       Size:256        Owner:0x2384\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:610c       Size:256        Owner:0x2386\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:620c       Size:256        Owner:0x2388\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:630c       Size:256        Owner:0x238a\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:640c       Size:256        Owner:0x238c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:650c       Size:256        Owner:0x238e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:660c       Size:256        Owner:0x2390\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:670c       Size:256        Owner:0x2392\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:680c       Size:256        Owner:0x2394\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:690c       Size:256        Owner:0x2396\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6a0c       Size:256        Owner:0x2398\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6b0c       Size:256        Owner:0x239a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6c0c       Size:256        Owner:0x239c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6d0c       Size:256        Owner:0x239e\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6e0c       Size:256        Owner:0x23a0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6f0c       Size:256        Owner:0x23a2\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:700c       Size:256        Owner:0x23a4\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:710c       Size:256        Owner:0x23a6\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:720c       Size:256        Owner:0x23a8\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:730c       Size:256        Owner:0x23aa\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:740c       Size:256        Owner:0x23ac\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:750c       Size:256        Owner:0x23ae\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:760c       Size:256        Owner:0x23b0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:770c       Size:273        Owner:0xfde\r
+\e[44;34m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:9fde       Size:32802      Owner:0x0\r
+\e[41;31m\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:9ffe       Size:24577      Owner:0x0\r
+\e[41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m
\ No newline at end of file
diff --git a/DEBUG.16W b/DEBUG.16W
new file mode 100755 (executable)
index 0000000..78d43b4
--- /dev/null
+++ b/DEBUG.16W
@@ -0,0 +1,210 @@
+\e[0mSeg:0      Size:8801       Owner:0x0\r
+\e[41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m\e[42;32m0\r
+\e[0m\e[0mSeg:2261       Size:256        Owner:0x1958\r
+\e[44;34m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:23bb       Size:44 Owner:0x0\r
+\e[41;31m+\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:23e7       Size:256        Owner:0x174a\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:24e7       Size:256        Owner:0x174c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:25e7       Size:256        Owner:0x174e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:26e7       Size:256        Owner:0x1750\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:27e7       Size:256        Owner:0x1752\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:28e7       Size:256        Owner:0x1754\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:29e7       Size:256        Owner:0x1756\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2ae7       Size:256        Owner:0x1758\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2be7       Size:256        Owner:0x175a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2ce7       Size:256        Owner:0x175c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2de7       Size:256        Owner:0x175e\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2ee7       Size:256        Owner:0x1760\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:2fe7       Size:256        Owner:0x1762\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:30e7       Size:256        Owner:0x1764\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:31e7       Size:256        Owner:0x1766\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:32e7       Size:256        Owner:0x1768\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:33e7       Size:256        Owner:0x176a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:34e7       Size:256        Owner:0x176c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:35e7       Size:256        Owner:0x176e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:36e7       Size:256        Owner:0x1770\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:37e7       Size:256        Owner:0x1772\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:38e7       Size:256        Owner:0x1774\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:39e7       Size:256        Owner:0x1776\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3ae7       Size:256        Owner:0x1778\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3be7       Size:256        Owner:0x177a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3ce7       Size:256        Owner:0x177c\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3de7       Size:256        Owner:0x177e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3ee7       Size:256        Owner:0x1780\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:3fe7       Size:256        Owner:0x1782\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:40e7       Size:256        Owner:0x1784\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:41e7       Size:256        Owner:0x1786\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:42e7       Size:256        Owner:0x1788\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:43e7       Size:256        Owner:0x178a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:44e7       Size:256        Owner:0x178c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:45e7       Size:256        Owner:0x178e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:46e7       Size:256        Owner:0x1790\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:47e7       Size:256        Owner:0x1792\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:48e7       Size:256        Owner:0x1794\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:49e7       Size:256        Owner:0x1796\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4ae7       Size:256        Owner:0x1798\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4be7       Size:256        Owner:0x179a\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4ce7       Size:256        Owner:0x179c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4de7       Size:256        Owner:0x179e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4ee7       Size:256        Owner:0x17a0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:4fe7       Size:256        Owner:0x17a2\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:50e7       Size:256        Owner:0x17a4\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:51e7       Size:256        Owner:0x17a6\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:52e7       Size:256        Owner:0x17a8\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:53e7       Size:256        Owner:0x17aa\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:54e7       Size:256        Owner:0x17ac\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:55e7       Size:256        Owner:0x17ae\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:56e7       Size:256        Owner:0x17b0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:57e7       Size:256        Owner:0x17b2\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:58e7       Size:256        Owner:0x17b4\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:59e7       Size:256        Owner:0x17b6\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5ae7       Size:256        Owner:0x17b8\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5be7       Size:256        Owner:0x17ba\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5ce7       Size:256        Owner:0x17bc\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5de7       Size:256        Owner:0x17be\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5ee7       Size:256        Owner:0x17c0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:5fe7       Size:256        Owner:0x17c2\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:60e7       Size:256        Owner:0x17c4\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:61e7       Size:256        Owner:0x17c6\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:62e7       Size:256        Owner:0x17c8\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:63e7       Size:256        Owner:0x17ca\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:64e7       Size:256        Owner:0x17cc\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:65e7       Size:256        Owner:0x17ce\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:66e7       Size:256        Owner:0x17d0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:67e7       Size:256        Owner:0x17d2\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:68e7       Size:256        Owner:0x17d4\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:69e7       Size:256        Owner:0x17d6\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6ae7       Size:256        Owner:0x17d8\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6be7       Size:256        Owner:0x17da\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6ce7       Size:256        Owner:0x17dc\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6de7       Size:256        Owner:0x17de\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6ee7       Size:256        Owner:0x17e0\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:6fe7       Size:256        Owner:0x17e2\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:70e7       Size:256        Owner:0x17e4\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:71e7       Size:256        Owner:0x17e6\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:72e7       Size:256        Owner:0x17e8\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:73e7       Size:256        Owner:0x17ea\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:74e7       Size:256        Owner:0x17ec\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:75e7       Size:256        Owner:0x17ee\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:76e7       Size:256        Owner:0x17f0\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:77e7       Size:256        Owner:0x17f2\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:78e7       Size:256        Owner:0x17f4\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:79e7       Size:256        Owner:0x17f6\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:7ae7       Size:256        Owner:0x17f8\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:7be7       Size:256        Owner:0x17fa\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:7ce7       Size:256        Owner:0x17fc\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:7de7       Size:256        Owner:0x17fe\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:7ee7       Size:256        Owner:0x1800\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:7fe7       Size:256        Owner:0x1802\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:80e7       Size:256        Owner:0x1804\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:81e7       Size:256        Owner:0x1806\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:82e7       Size:256        Owner:0x1808\r
+\e[45;35m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:83e7       Size:256        Owner:0x180a\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:84e7       Size:256        Owner:0x180c\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:85e7       Size:256        Owner:0x180e\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:86e7       Size:256        Owner:0x1810\r
+\e[45;35m++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:87e7       Size:273        Owner:0xe622\r
+\e[44;34m+++++\e[0m\e[42;32m\r
+\e[0m\e[0mSeg:b3e7       Size:19480      Owner:0x0\r
+\e[41;31m+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m
\ No newline at end of file
diff --git a/HEAP.16W b/HEAP.16W
new file mode 100755 (executable)
index 0000000..13dd057
--- /dev/null
+++ b/HEAP.16W
@@ -0,0 +1,47 @@
+\r
+       == default ==\r
+\r
+  USED block at 23dd0016 of size 66\r
+  USED block at 23dd0058 of size 66\r
+  FREE block at 23dd009a of size 18\r
+  USED block at 23dd00ac of size 136\r
+  USED block at 23dd0134 of size 20\r
+  FREE block at 23dd0148 of size 7860\r
+OK - end of heap\r
+\r
+       == near ==\r
+\r
+  USED block at 13dce656 of size 12\r
+  USED block at 13dce662 of size 332\r
+  USED block at 13dce7ae of size 52\r
+  USED block at 13dce7e2 of size 20\r
+  USED block at 13dce7f6 of size 20\r
+  USED block at 13dce80a of size 20\r
+  USED block at 13dce81e of size 20\r
+  USED block at 13dce832 of size 20\r
+  USED block at 13dce846 of size 6070\r
+OK - end of heap\r
+\r
+       == far ==\r
+\r
+  USED block at 23dd0016 of size 66\r
+  USED block at 23dd0058 of size 66\r
+  USED block at 23dd009a of size 18\r
+  USED block at 23dd00ac of size 136\r
+  USED block at 23dd0134 of size 20\r
+  USED block at 23dd0148 of size 7860\r
+OK - end of heap\r
+\r
+Memory Type         Total      Used       Free\r
+----------------  --------   --------   --------\r
+Default                   8166         288       7878\r
+Near              6566         496       6070\r
+Far               8166         288       7878\r
+----------------  --------   --------   --------\r
+coreleft = 6068\r
+farcoreleft = 54752\r
+GetFreeSize = 48704\r
+GetNearFreeSize = 6070\r
+GetFarFreeSize = 48704\r
+memavl = 6068\r
+stackavail = 31604\r
diff --git a/MEMINFO.16B b/MEMINFO.16B
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/MMDUMP.16B b/MMDUMP.16B
new file mode 100755 (executable)
index 0000000..8609c21
Binary files /dev/null and b/MMDUMP.16B differ
diff --git a/MMDUMP.16W b/MMDUMP.16W
new file mode 100755 (executable)
index 0000000..db214e4
Binary files /dev/null and b/MMDUMP.16W differ
index 47bc095..0cb42ac 100755 (executable)
Binary files a/bcexmm.dsk and b/bcexmm.dsk differ
index 623f94b..89419f2 100755 (executable)
Binary files a/bcexmm.exe and b/bcexmm.exe differ
index 5737634..d6b1865 100755 (executable)
Binary files a/bcexmm.prj and b/bcexmm.prj differ
index 580bfec..c054683 100755 (executable)
--- a/makefile
+++ b/makefile
@@ -379,6 +379,7 @@ clean: .symbolic
        @if exist *.mah $(REMOVECOMMAND) *.mah
        @if exist *.MAH $(REMOVECOMMAND) *.MAH
        @if exist *.err $(REMOVECOMMAND) *.err
+       @if exist TC*.SWP $(REMOVECOMMAND) TC*.SWP
 #      @if exist *.16W $(REMOVECOMMAND) *.16W
 #      @if exist *.16B $(REMOVECOMMAND) *.16B
 
diff --git a/src/0.c b/src/0.c
index 31d1952..8734bb6 100755 (executable)
--- a/src/0.c
+++ b/src/0.c
@@ -1,3 +1,25 @@
+/* Project 16 Source Code~\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ *\r
+ * This file is part of Project 16.\r
+ *\r
+ * Project 16 is free software; you can redistribute it and/or modify\r
+ * it under the terms of the GNU General Public License as published by\r
+ * the Free Software Foundation; either version 3 of the License, or\r
+ * (at your option) any later version.\r
+ *\r
+ * Project 16 is distributed in the hope that it will be useful,\r
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
+ * GNU General Public License for more details.\r
+ *\r
+ * You should have received a copy of the GNU General Public License\r
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>, or\r
+ * write to the Free Software Foundation, Inc., 51 Franklin Street,\r
+ * Fifth Floor, Boston, MA 02110-1301 USA.\r
+ *\r
+ */\r
+\r
 #include <hw/cpu/cpu.h>\r
 #include <hw/dos/dos.h>\r
 #include <hw/vga/vga.h>\r
index b3fa067..d2072fc 100755 (executable)
--- a/src/16.c
+++ b/src/16.c
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index c39155d..dd35aa6 100755 (executable)
--- a/src/16.h
+++ b/src/16.h
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 7c1fb1a..54af898 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 4506986..b45b4c4 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 8a17839..25436f8 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index df0efd6..db9ec17 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 0589a49..1fc19b2 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index ffa6d0c..a46466c 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 30cb859..1f88a3c 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 13dd3f0..0f77772 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 870d50c..8285ff4 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 7c25afa..f48a09c 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 7fd72c4..aad7a55 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 895e4d6..d5744b9 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 5cf56c2..84cfd92 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 4cf5039..ac77de4 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 5caf88c..2ce5fc1 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 544b494..e814c14 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 7b0d04e..1d274ea 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 66797e3..35143db 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 8fede66..0e29ebe 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
 #include "src/lib/16_vrs.h"\r
 #include "src/lib/scroll16.h"\r
 \r
-//#define VMEMPAGESIZE2        video->page[0].pagesize+video->page[1].pagesize\r
-//#define VMEMPAGEDATA2        video->page[2].data\r
-\r
-struct sprite\r
-{\r
-       // VRS container from which we will extract animation and image data\r
-       struct vrs_container *spritesheet;\r
-       // Container for a vrl sprite\r
-       struct vrl_container *sprite_vrl_cont;\r
-       // Current sprite id\r
-       int curr_spri_id;\r
-       // Index of a current sprite in an animation sequence\r
-       int curr_anim_spri;\r
-       // Current animation sequence\r
-       struct vrs_animation_list_entry_t *curr_anim_list;\r
-       // Index of current animation in relevant VRS offsets table\r
-       int curr_anim;\r
-       // Delay in time units untill we should change sprite\r
-       int delay;\r
-       // Position of sprite on screen\r
-       int x, y;\r
-};\r
+//moved to 16_tdef.h\r
+// struct sprite\r
+// {\r
+//     // VRS container from which we will extract animation and image data\r
+//     struct vrs_container *spritesheet;\r
+//     // Container for a vrl sprite\r
+//     struct vrl_container *sprite_vrl_cont;\r
+//     // Current sprite id\r
+//     int curr_spri_id;\r
+//     // Index of a current sprite in an animation sequence\r
+//     int curr_anim_spri;\r
+//     // Current animation sequence\r
+//     struct vrs_animation_list_entry_t *curr_anim_list;\r
+//     // Index of current animation in relevant VRS offsets table\r
+//     int curr_anim;\r
+//     // Delay in time units untill we should change sprite\r
+//     int delay;\r
+//     // Position of sprite on screen\r
+//     int x, y;\r
+// };\r
 \r
 /* Retrive current animation name of sprite\r
 * In:\r
index 35eb2f4..4c5abf5 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 7cfd84e..4e8c2d1 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
@@ -371,23 +371,9 @@ void Quit (global_game_variables_t *gvar, char *error)
 }\r
 \r
 //===========================================================================\r
-\r
-void walktypeinfo(player_t *player, word pn)\r
-{\r
-       switch(player[pn].walktype)\r
-       {\r
-               case 0: //bump\r
-                       sprintf(global_temp_status_text, "%s", "b");\r
-               break;\r
-               case 1: //walk no scroll\r
-                       sprintf(global_temp_status_text, "%s", "w");\r
-               break;\r
-               case 2: //scrolling walk\r
-                       sprintf(global_temp_status_text, "%s", "s");\r
-               break;\r
-       }\r
-}\r
-\r
+#ifndef __WATCOMC__\r
+char global_temp_status_text[512];\r
+#else\r
 //\r
 // for mary4 (XT)\r
 // this is from my XT's BIOS\r
@@ -399,36 +385,37 @@ void turboXT(byte bakapee)
        push    ax\r
        push    bx\r
        push    cx\r
-       in      al, 61h                         ; Read equipment flags\r
-       xor     al, bakapee                     ;   toggle speed\r
-       out     61h, al                         ; Write new flags back\r
+       in      al, 61h                         //; Read equipment flags\r
+       xor     al, bakapee                     //;   toggle speed\r
+       out     61h, al                         //; Write new flags back\r
 \r
-       mov     bx, 0F89h                       ; low pitch blip\r
-       and     al, 4                           ; Is turbo mode set?\r
+       mov     bx, 0F89h                       //; low pitch blip\r
+       and     al, 4                           //; Is turbo mode set?\r
        jz      @@do_beep\r
-       mov     bx, 52Eh                        ; high pitch blip\r
+       mov     bx, 52Eh                        //; high pitch blip\r
 \r
 @@do_beep:\r
-       mov     al, 10110110b           ; Timer IC 8253 square waves\r
-       out     43h, al                         ;   channel 2, speaker\r
+       mov     al, 10110110b           //; Timer IC 8253 square waves\r
+       out     43h, al                         //;   channel 2, speaker\r
        mov     ax, bx\r
-       out     42h, al                         ;   send low order\r
-       mov     al, ah                          ;   load high order\r
-       out     42h, al                         ;   send high order\r
-       in      al, 61h                         ; Read IC 8255 machine status\r
+       out     42h, al                         //;   send low order\r
+       mov     al, ah                          //;   load high order\r
+       out     42h, al                         //;   send high order\r
+       in      al, 61h                         //; Read IC 8255 machine status\r
        push    ax\r
        or      al, 00000011b\r
-       out     61h, al                         ; Turn speaker on\r
+       out     61h, al                         //; Turn speaker on\r
        mov     cx, 2000h\r
 @@delay:\r
        loop    @@delay\r
        pop     ax\r
-       out     61h, al                         ; Turn speaker off\r
+       out     61h, al                         //; Turn speaker off\r
        pop     cx\r
        pop     bx\r
        pop     ax\r
        }\r
 }\r
+#endif\r
 \r
 const char *nibble_to_binary(nibble x)\r
 {\r
index 984ad36..e91b4eb 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
@@ -78,7 +78,6 @@ void Startup16(global_game_variables_t *gvar);
 void ClearMemory (global_game_variables_t *gvar);\r
 void Quit (global_game_variables_t *gvar, char *error);\r
 void turboXT(byte bakapee);\r
-void walktypeinfo(player_t *player, word pn);\r
 void nibbletest();\r
 void booleantest();\r
 \r
index 0a4248b..9a225c8 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
@@ -119,6 +119,29 @@ typedef struct {
        sword delta;                    // How much should we shift the page for smooth scrolling\r
 } page_t;\r
 \r
+//from 16_sprit.h\r
+#ifdef __WATCOMC__\r
+typedef struct sprite\r
+{\r
+       // VRS container from which we will extract animation and image data\r
+       struct vrs_container *spritesheet;\r
+       // Container for a vrl sprite\r
+       struct vrl_container *sprite_vrl_cont;\r
+       // Current sprite id\r
+       int curr_spri_id;\r
+       // Index of a current sprite in an animation sequence\r
+       int curr_anim_spri;\r
+       // Current animation sequence\r
+       struct vrs_animation_list_entry_t *curr_anim_list;\r
+       // Index of current animation in relevant VRS offsets table\r
+       int curr_anim;\r
+       // Delay in time units untill we should change sprite\r
+       int delay;\r
+       // Position of sprite on screen\r
+       int x, y;\r
+} sprite_t;\r
+#endif\r
+\r
 //newer structs\r
 typedef        struct\r
 {\r
@@ -128,35 +151,23 @@ typedef   struct
        int ty; //entity tile position on the viewable map\r
        int triggerx; //entity's trigger box tile position on the viewable map\r
        int triggery; //entity's trigger box tile position on the viewable map\r
-       int sheetsetx; //NOT USED YET! entity sprite sheet set on the image x\r
-       int sheetsety; //NOT USED YET! entity sprite sheet set on the image y\r
+//     int sheetsetx; //NOT USED YET! entity sprite sheet set on the image x\r
+//     int sheetsety; //NOT USED YET! entity sprite sheet set on the image y\r
        nibble d;               //direction to render sprite!! wwww\r
        nibble pred;    //prev. direction for animation changing\r
        word dire;              //sprite in use\r
        nibble q;               //loop variable for anumation and locking the playing to compleate the animation cycle to prevent issues with misalignment www\r
        word speed;             //entity speed!\r
        word spt;               //speed per tile\r
-       struct sprite *spri; // sprite used by entity\r
+#ifdef __WATCOMC__\r
+       sprite_t *spri; // sprite used by entity\r
+#endif\r
        sword hp; //hitpoints of the entity\r
        nibble overdraww, overdrawh;    // how many pixels to "overdraw" so that moving sprites with edge pixels don't leave streaks.\r
                                                // if the sprite's edge pixels are clear anyway, you can set this to 0.\r
        nibble /*int*/ persist_aniframe;    // gonna be increased to 1 before being used, so 0 is ok for default\r
 } entity_t;\r
 \r
-//TODO: MAKE THIS WWWW\r
-typedef struct\r
-{\r
-       //sprite ....\r
-       boolean wwww;\r
-} spri_t;\r
-\r
-//TODO: MAKE THIS TO WWWW\r
-typedef struct\r
-{\r
-       //vrs with sprite ....\r
-       spri_t *spri;\r
-} vrs_t;\r
-\r
 //from 16_in\r
 //==========================================================================\r
 typedef        byte            ScanCode;\r
@@ -526,8 +537,8 @@ typedef struct
        mminfo_t mm; mminfotype mmi;\r
 } global_game_variables_t;\r
 \r
-extern char global_temp_status_text[512];\r
 #ifdef __WATCOMC__\r
+extern char global_temp_status_text[512];\r
 #define EINVFMT EMFILE\r
 #endif\r
 #endif /* _TYPEDEFSTRUCT_H_ */\r
index 86220b3..6a0c7a4 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index fb2335c..ec25af5 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 083e212..057e763 100755 (executable)
@@ -1340,7 +1340,7 @@ void VL_PrintmodexmemInfo(video_t *v)
        printf("VL_PrintmodexmemInfo:\n");\r
 //     printf("========================================\n");\r
        printf("  Virtual Screen: %dx", v->page[0].width);      printf("%d      ", v->page[0].height);  printf("Tile: %dx", v->page[0].ti.tilesw);              printf("%d", v->page[0].ti.tilesh);     printf("=((Virtual Screen)/16)\n");\r
-       printf("        Screen: %dx", v->page[0].sw);           printf("%d      ", v->page[0].sh);              printf("Tile: %dx", v->page[0].ti.tw);                  printf("%d", v->page[0].ti.th);         printf("=((Screen)/16)\n");\r
+       printf("          Screen: %dx", v->page[0].sw);         printf("%d      ", v->page[0].sh);              printf("Tile: %dx", v->page[0].ti.tw);                  printf("%d", v->page[0].ti.th);         printf("=((Screen)/16)\n");\r
 \r
        printf("  Free Video Memory: %u\n", v->vmem_remain);\r
        printf("  page");\r
index 41ef537..75908ac 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index cb5495b..068f569 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 3a3a7a7..56abfb8 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 32cb7e0..7287bf1 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index d395c02..65620d7 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index c6f3e36..c4c81e4 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index e8ad461..22bad98 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 2553764..b35996d 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index e6fba71..3bb6747 160000 (submodule)
@@ -1 +1 @@
-Subproject commit e6fba71d59fad9b5e5bce6115f38dfb61c299a32
+Subproject commit 3bb67471d6e782d6b77309e39eaf63a330ad83a7
index dd37e3f..d48f921 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
@@ -285,15 +285,16 @@ 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
-       word high_address, low_address, offset;\r
+       VL_ShowPage(moo[moo[0].video->sp].page, vsync, sr);\r
+       /*word high_address, low_address, offset;\r
        byte crtcOffset;\r
 \r
-       /* calculate offset */\r
+       // calculate offset\r
        offset = (word) moo[moo[0].video->sp].page->data;\r
        offset += moo[0].page->dy * (moo[0].page->width >> 2 );\r
        offset += moo[0].page->dx >> 2;\r
 \r
-       /* calculate crtcOffset according to virtual width */\r
+       // calculate crtcOffset according to virtual width\r
        switch(sr)\r
        {\r
                case 1:\r
@@ -308,19 +309,19 @@ void ZC_ShowMV(map_view_t *moo, boolean vsync, boolean sr)
        high_address = HIGH_ADDRESS | (offset & 0xff00);\r
        low_address  = LOW_ADDRESS  | (offset << 8);\r
 \r
-       /* wait for appropriate timing and then program CRTC */\r
+       // wait for appropriate timing and then program CRTC\r
        if(vsync) while ((inp(INPUT_STATUS_1) & DISPLAY_ENABLE));\r
        outpw(CRTC_INDEX, high_address);\r
        outpw(CRTC_INDEX, low_address);\r
        outp(CRTC_INDEX, 0x13);\r
        outp(CRTC_DATA, crtcOffset);\r
 \r
-       /* wait for one retrace */\r
+       // wait for one retrace\r
        if(vsync) while (!(inp(INPUT_STATUS_1) & VRETRACE));\r
 \r
-       /* do PEL panning here */\r
+       // do PEL panning here\r
        outp(AC_INDEX, 0x33);\r
-       outp(AC_INDEX, (moo[0].page->dx & 0x03) << 1);\r
+       outp(AC_INDEX, (moo[0].page->dx & 0x03) << 1);*/\r
 }\r
 \r
 /*map_t\r
@@ -410,23 +411,12 @@ initMap(map_t *map) {
        }\r
 }\r
 \r
+\r
 void near mapScrollRight(map_view_t *mv, player_t *player, word id, word plid)\r
 {\r
        word x;//, y;  /* coordinate for drawing */\r
 \r
-       /* increment the pixel position and update the page */\r
-       mv[id].page[0].dx += player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page[0].dx >= mv[id].dxThresh )\r
-       {\r
-       /* go forward one tile */\r
-       mv[id].tx++;\r
-       /* Snap the origin forward */\r
-       mv[id].page->data += 4;\r
-\r
-       mv[id].page[0].dx = mv[id].map->tiles->tileWidth;\r
-       }\r
+       ScrollRight(mv, player, id, plid);\r
 \r
        /* draw the next column */\r
        x= mv[0].page->sw + mv[id].map->tiles->tileWidth;\r
@@ -448,19 +438,7 @@ void near mapScrollLeft(map_view_t *mv, player_t *player, word id, word plid)
 {\r
        word x;//,y;  /* coordinate for drawing */\r
 \r
-       /* decrement the pixel position and update the page */\r
-       mv[id].page[0].dx -= player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page[0].dx == 0)\r
-       {\r
-       /* go backward one tile */\r
-       mv[id].tx--;\r
-       /* Snap the origin backward */\r
-       mv[id].page->data -= 4;\r
-\r
-       mv[id].page[0].dx = mv[id].map->tiles->tileWidth;\r
-       }\r
+       ScrollLeft(mv, player, id, plid);\r
 \r
        /* draw the next column */\r
        x= 0;\r
@@ -482,19 +460,7 @@ void near mapScrollUp(map_view_t *mv, player_t *player, word id, word plid)
 {\r
        word y;//x,  /* coordinate for drawing */\r
 \r
-       /* decrement the pixel position and update the page */\r
-       mv[id].page[0].dy -= player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page[0].dy == 0 )\r
-       {\r
-       /* go up one tile */\r
-       mv[id].ty--;\r
-       /* Snap the origin upward */\r
-       mv[id].page->data -= mv[id].page->pi;\r
-\r
-       mv[id].page[0].dy = mv[id].map->tiles->tileHeight;\r
-       }\r
+       ScrollUp(mv, player, id, plid);\r
 \r
        /* draw the next row */\r
        y= 0;\r
@@ -516,19 +482,7 @@ void near mapScrollDown(map_view_t *mv, player_t *player, word id, word plid)
 {\r
        word y;//x,  /* coordinate for drawing */\r
 \r
-       /* increment the pixel position and update the page */\r
-       mv[id].page[0].dy += player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page[0].dy >= mv[id].dyThresh )\r
-       {\r
-       /* go down one tile */\r
-       mv[id].ty++;\r
-       /* Snap the origin downward */\r
-       mv[id].page->data += mv[id].page->pi;\r
-\r
-       mv[id].page[0].dy = mv[id].map->tiles->tileHeight;\r
-       }\r
+       ScrollDown(mv, player, id, plid);\r
 \r
        /* draw the next row */\r
        y= mv[0].page->sh + mv[id].map->tiles->tileHeight;\r
@@ -546,79 +500,11 @@ void near mapScrollDown(map_view_t *mv, player_t *player, word id, word plid)
 }\r
 \r
 \r
-//TODO finish this wwww\r
-void near ScrollRight(map_view_t *mv, player_t *player, word id, word plid)\r
-{\r
-       /* increment the pixel position and update the page */\r
-       mv[id].page->dx += player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page->dx >= mv[0].dxThresh )\r
-       {\r
-//             vga_setup_wm1_block_copy();\r
-//             _fmemmove(mv[id].page->data+4, mv[id].page->data, mv[id].page->pagesize);\r
-//             vga_restore_rm0wm0();\r
-               /* Snap the origin forward */\r
-               mv[id].page->data += 4;\r
-               mv[id].page->dx = mv[0].map->tiles->tileWidth;\r
-       }\r
-}\r
-\r
-void near ScrollLeft(map_view_t *mv, player_t *player, word id, word plid)\r
-{\r
-       /* decrement the pixel position and update the page */\r
-       mv[id].page->dx -= player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page->dx == 0)\r
-       {\r
-//             vga_setup_wm1_block_copy();\r
-//             _fmemmove(mv[id].page->data-4, mv[id].page->data, mv[id].page->pagesize);\r
-//             vga_restore_rm0wm0();\r
-               /* Snap the origin backward */\r
-               mv[id].page->data -= 4;\r
-               mv[id].page->dx = mv[0].map->tiles->tileWidth;\r
-       }\r
-}\r
-\r
-void near ScrollUp(map_view_t *mv, player_t *player, word id, word plid)\r
-{\r
-       /* decrement the pixel position and update the page */\r
-       mv[id].page->dy -= player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page->dy == 0)\r
-       {\r
-//             vga_setup_wm1_block_copy();\r
-//             _fmemmove(mv[id].page->data-mv[id].page->pi, mv[id].page->data, mv[id].page->pagesize);\r
-//             vga_restore_rm0wm0();\r
-               /* Snap the origin backward */\r
-               mv[id].page->data -= mv[id].page->pi;\r
-               mv[id].page->dy = mv[0].map->tiles->tileWidth;\r
-       }\r
-}\r
-\r
-void near ScrollDown(map_view_t *mv, player_t *player, word id, word plid)\r
-{\r
-       /* increment the pixel position and update the page */\r
-       mv[id].page->dy += player[plid].enti.speed;\r
-\r
-       /* check to see if this changes the tile */\r
-       if(mv[id].page->dy >= mv[0].dxThresh )\r
-       {\r
-//             vga_setup_wm1_block_copy();\r
-//             _fmemmove(mv[id].page->data+mv[id].page->pi, mv[id].page->data, mv[id].page->pagesize);\r
-//             vga_restore_rm0wm0();\r
-               /* Snap the origin forward */\r
-               mv[id].page->data += mv[id].page->pi;\r
-               mv[id].page->dy = mv[0].map->tiles->tileWidth;\r
-       }\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 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)\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
@@ -704,7 +590,7 @@ void mapinitmapview(map_view_t *mv, int tx, int ty)
 \r
        /* set up the thresholds */\r
        mv[0].dxThresh = mv[1].dxThresh = mv[2].dxThresh = mv[3].dxThresh = mv->map->tiles->tileWidth * 2;\r
-       mv[0].dyThresh = mv[1].dyThresh = mv[2].dxThresh = mv[3].dxThresh = mv->map->tiles->tileHeight * 2;\r
+       mv[0].dyThresh = mv[1].dyThresh = mv[2].dyThresh = mv[3].dyThresh = mv->map->tiles->tileHeight * 2;\r
 }\r
 \r
 void near\r
index c3260f7..1262b9a 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
@@ -81,7 +81,7 @@
        printf("\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[0].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("        player.info.dir: %d", player[0].info.dir);      printf("        player.d: %d ", player[0].enti.d);\\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("\n\n");\\r
        VL_PrintmodexmemInfo(&gvar.video);\\r
@@ -106,11 +106,75 @@ void near mapScrollRight(map_view_t *mv, player_t *player, word id, word plid);
 void near mapScrollLeft(map_view_t *mv, player_t *player, word id, word plid);\r
 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 near ScrollRight(map_view_t *mv, player_t *player, word id, word plid);\r
-void near ScrollLeft(map_view_t *mv, player_t *player, word id, word plid);\r
-void near ScrollUp(map_view_t *mv, player_t *player, word id, word plid);\r
-void near ScrollDown(map_view_t *mv, player_t *player, word id, word plid);\r
-void playerXYpos(int x, int y, player_t *player, map_view_t *pip, nibble pn);\r
+inline void near ScrollRight(map_view_t *mv, player_t *player, word id, word plid)\r
+{\r
+       /* increment the pixel position and update the page */\r
+       mv[id].page->dx += player[plid].enti.speed;\r
+\r
+       /* check to see if this changes the tile */\r
+       if(mv[id].page->dx >= mv[id].dxThresh )\r
+       {\r
+               /* go forward one tile */\r
+               if(id==0) mv[id].tx++;\r
+               /* Snap the origin forward */\r
+               mv[id].page->data += 4;\r
+\r
+               mv[id].page->dx = mv[id].map->tiles->tileWidth;\r
+       }\r
+}\r
+\r
+inline void near ScrollLeft(map_view_t *mv, player_t *player, word id, word plid)\r
+{\r
+       /* decrement the pixel position and update the page */\r
+       mv[id].page->dx -= player[plid].enti.speed;\r
+\r
+       /* check to see if this changes the tile */\r
+       if(mv[id].page->dx == 0)\r
+       {\r
+               /* go backward one tile */\r
+               if(id==0) mv[id].tx--;\r
+               /* Snap the origin backward */\r
+               mv[id].page->data -= 4;\r
+\r
+               mv[id].page->dx = mv[id].map->tiles->tileWidth;\r
+       }\r
+}\r
+\r
+inline void near ScrollUp(map_view_t *mv, player_t *player, word id, word plid)\r
+{\r
+       /* decrement the pixel position and update the page */\r
+       mv[id].page->dy -= player[plid].enti.speed;\r
+\r
+       /* check to see if this changes the tile */\r
+       if(mv[id].page->dy == 0 )\r
+       {\r
+               /* go up one tile */\r
+               if(id==0) mv[id].ty--;\r
+               /* Snap the origin upward */\r
+               mv[id].page->data -= mv[id].page->pi;\r
+\r
+               mv[id].page->dy = mv[id].map->tiles->tileHeight;\r
+       }\r
+}\r
+\r
+inline void near ScrollDown(map_view_t *mv, player_t *player, word id, word plid)\r
+{\r
+       /* increment the pixel position and update the page */\r
+       mv[id].page->dy += player[plid].enti.speed;\r
+\r
+       /* check to see if this changes the tile */\r
+       if(mv[id].page->dy >= mv[id].dyThresh )\r
+       {\r
+               /* go down one tile */\r
+               if(id==0) mv[id].ty++;\r
+               /* Snap the origin downward */\r
+               mv[id].page->data += mv[id].page->pi;\r
+\r
+               mv[id].page->dy = mv[id].map->tiles->tileHeight;\r
+       }\r
+}\r
+\r
+void ZC_playerXYpos(int x, int y, player_t *player, map_view_t *pip, nibble pn);\r
 sword chkmap(map_t *map, word q);\r
 void mapGoTo(map_view_t *mv, int tx, int ty);\r
 void mapinitmapview(map_view_t *mv, int tx, int ty);\r
index 3301624..7649898 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index df89b45..3864b67 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 6ec5568..f2ff194 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index e15d862..3e8bb2f 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index a7cb7cc..357e2ca 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 2ab4863..efebd16 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 98e5a16..810ccf3 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
@@ -118,7 +118,7 @@ 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
-       playerXYpos(0, 0, &player, &mv, 0);\r
+       ZC_playerXYpos(0, 0, &player, &mv, 0);\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
index f2726fc..ac8908c 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index b4c33ee..e33a676 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index b86eaa7..3aa5cd0 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index d879f65..8e20a4c 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
index 6cdba59..557cc9a 100755 (executable)
@@ -1,5 +1,5 @@
 /* Project 16 Source Code~\r
- * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
  *\r
  * This file is part of Project 16.\r
  *\r
@@ -25,6 +25,8 @@
 #include "src/lib/16render.h"\r
 #include "src/lib/16_dbg.h"\r
 \r
+#define FADE\r
+\r
 static map_t map;\r
 map_view_t mv[4];\r
 float t;\r
@@ -36,15 +38,13 @@ boolean pagenorendermap = 0;        //default: 0
 unsigned int i;\r
 \r
 #ifdef FADE\r
-static word paloffset=0;\r
+//static word paloffset=0;\r
 byte *dpal;\r
 #endif\r
 byte *gpal;\r
 byte *ptr;\r
 memptr pal;\r
 \r
-//bitmap_t     *ptmpdata;\r
-\r
 #define FILENAME_1     "data/spri/chikyuu.vrs"\r
 #define FILENAME_1P    "data/spri/chikyuu.pal"\r
 #define FILENAME_2     "data/spri/ptmp.vrs"\r
@@ -89,7 +89,6 @@ void main(int argc, char *argv[])
 //     fprintf(stderr, "yay map loaded~~\n");\r
 \r
        // data\r
-       //read_vrs(&gvar, , .spri->spritesheet);\r
        VRS_LoadVRS(bakapee1, &player[0].enti, &gvar);\r
 \r
        // input!\r
@@ -124,14 +123,11 @@ void main(int argc, char *argv[])
        modexHiganbanaPageSetup(&gvar.video);\r
        ZC_MVSetup(&mv, &map, &gvar);\r
 \r
-       //renderswitch\r
-       gvar.video.rss=0;\r
-\r
        // set up paging\r
        //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
-       playerXYpos(0, 0, &player, &mv, 0);\r
+       ZC_playerXYpos(0, 0, &player, &mv, 0);\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
@@ -151,14 +147,11 @@ 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);//modexShowPage(mv[0].page);//!(gvar.video.p)\r
+       VL_ShowPage(mv[0].page, 0, 0);\r
        animate_spri(&(player[0].enti), &gvar.video);\r
 #ifdef FADE\r
        modexFadeOn(4, gpal);\r
 #endif\r
-       /*strcpy(global_temp_status_text, "press enter for the loop of zcroll\nescape to quit");\r
-       modexprint(&gvar.video.page[0], 144, 72, 1, 7, 0, global_temp_status_text);\r
-       while(!IN_KeyDown(sc_Enter)){ if(IN_KeyDown(sc_Escape)) goto quit; } IN_UserInput(1,1);*///wwww\r
        while(!IN_KeyDown(sc_Escape) && player[0].enti.hp>0)\r
        {\r
                shinku(&gvar);\r