From f2a811af6076e5d139acaef8c0fcf7c40244d8ed Mon Sep 17 00:00:00 2001 From: sparky4 Date: Fri, 14 Apr 2017 15:26:49 -0500 Subject: [PATCH] p16 is being worked on a bunch by me wwww [16_ca needs huge amounts of work and I should remember what needs to be done soon][OpenVGMFile needs to be ported to 16_snd.c]going to port rest of code to borland c some time so we can use the core components of id engine here [going to add 16_us.c eventually but the debug system and CA_ PM_ and MM_ usage is priority now]older zcroll renamed to xcroll][zcroll is now the pre menu game loop system with PROPER data usage with CAMMPM] MM_ShowMemory is quite buggy on real machines. i need to debug it and fix added a struct printer[gvar.mm is FUCKING HUGE 14402 bytes FAT\!]16_rf now compiles BT UNKNOWN ON WHAT IT DOSE\! text box creates a ghost because page 1 do not have bg info thus it is stored and saved.... wwww fizzfade being worked on and no idea how to make it work...[xcroll is not working right FUCK] --- DEBUG.16B | 210 ++++++++++++++++++++++++++++++++++++++++++++ DEBUG.16W | 212 +++++++++++++++++++++++++++++++++++++++++++++ HEAP.16W | 43 +++++++++ MEMINFO.16B | 0 MEMINFO.16W | 0 MMDUMP.16B | Bin 0 -> 2525 bytes MMDUMP.16W | Bin 0 -> 2525 bytes bcexmm.dsk | Bin 1983 -> 1984 bytes bcexmm.exe | Bin 153040 -> 154940 bytes bcexmm.prj | Bin 9979 -> 9979 bytes data/winrun.cfg | 5 -- makefile | 6 +- src/bakapi.c | 143 ++++++++++++++++-------------- src/bakapi.h | 19 ++++ src/exmmtest.c | 9 +- src/lib/16_head.c | 11 ++- src/lib/16_head.h | 3 +- src/lib/16_in.c | 1 + src/lib/16_mm.c | 36 +++++--- src/lib/16_tail.c | 37 +++++--- src/lib/16_tail.h | 1 + src/lib/16_tail_.c | 33 ++++++- src/lib/16_tdef.h | 8 +- src/lib/16_vl.c | 7 +- src/lib/16_vl.h | 1 + src/lib/16_vl_1.c | 50 +++++++++-- src/lib/bakapee.c | 89 ++++++++++++++----- src/lib/bakapee.h | 1 + src/lib/scroll16.c | 1 - src/xcroll.c | 14 ++- 30 files changed, 793 insertions(+), 147 deletions(-) create mode 100755 DEBUG.16B create mode 100755 DEBUG.16W create mode 100755 HEAP.16W create mode 100755 MEMINFO.16B create mode 100755 MEMINFO.16W create mode 100755 MMDUMP.16B create mode 100755 MMDUMP.16W delete mode 100755 data/winrun.cfg diff --git a/DEBUG.16B b/DEBUG.16B new file mode 100755 index 00000000..a278ea53 --- /dev/null +++ b/DEBUG.16B @@ -0,0 +1,210 @@ +Seg:0 Size:5524 Owner:0x0 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++_0 +Seg:1594 Size:256 Owner:0x6d31 +_0 +Seg:1694 Size:256 Owner:0x3316 +_0 +Seg:1794 Size:256 Owner:0x3318 +_0 +Seg:1894 Size:256 Owner:0x331a +_0 +Seg:1994 Size:256 Owner:0x331c +_0 +Seg:1a94 Size:256 Owner:0x331e +_0 +Seg:1b94 Size:256 Owner:0x3320 +_0 +Seg:1c94 Size:256 Owner:0x3322 +_0 +Seg:1d94 Size:256 Owner:0x3324 +_0 +Seg:1e94 Size:256 Owner:0x3326 +_00 +Seg:1fde Size:34 Owner:0x0 +_0 +Seg:2000 Size:256 Owner:0x3328 +_0 +Seg:2100 Size:256 Owner:0x332a +_0 +Seg:2200 Size:256 Owner:0x332c +_0 +Seg:2300 Size:256 Owner:0x332e +_0 +Seg:2400 Size:256 Owner:0x3330 +_0 +Seg:2500 Size:256 Owner:0x3332 +_0 +Seg:2600 Size:256 Owner:0x3334 +_0 +Seg:2700 Size:256 Owner:0x3336 +_0 +Seg:2800 Size:256 Owner:0x3338 +_0 +Seg:2900 Size:256 Owner:0x333a +_0 +Seg:2a00 Size:256 Owner:0x333c +_0 +Seg:2b00 Size:256 Owner:0x333e +_0 +Seg:2c00 Size:256 Owner:0x3340 +_0 +Seg:2d00 Size:256 Owner:0x3342 +_0 +Seg:2e00 Size:256 Owner:0x3344 +_0 +Seg:2f00 Size:256 Owner:0x3346 +_0 +Seg:3000 Size:256 Owner:0x3348 +_0 +Seg:3100 Size:256 Owner:0x334a +_0 +Seg:3200 Size:256 Owner:0x334c +_0 +Seg:3300 Size:256 Owner:0x334e +_0 +Seg:3400 Size:256 Owner:0x3350 +_0 +Seg:3500 Size:256 Owner:0x3352 +_0 +Seg:3600 Size:256 Owner:0x3354 +_0 +Seg:3700 Size:256 Owner:0x3356 +_0 +Seg:3800 Size:256 Owner:0x3358 +_0 +Seg:3900 Size:256 Owner:0x335a +_0 +Seg:3a00 Size:256 Owner:0x335c +_0 +Seg:3b00 Size:256 Owner:0x335e +_0 +Seg:3c00 Size:256 Owner:0x3360 +_0 +Seg:3d00 Size:256 Owner:0x3362 +_0 +Seg:3e00 Size:256 Owner:0x3364 +_0 +Seg:3f00 Size:256 Owner:0x3366 +_0 +Seg:4000 Size:256 Owner:0x3368 +_0 +Seg:4100 Size:256 Owner:0x336a +_0 +Seg:4200 Size:256 Owner:0x336c +_0 +Seg:4300 Size:256 Owner:0x336e +_0 +Seg:4400 Size:256 Owner:0x3370 +_0 +Seg:4500 Size:256 Owner:0x3372 +_0 +Seg:4600 Size:256 Owner:0x3374 +_0 +Seg:4700 Size:256 Owner:0x3376 +_0 +Seg:4800 Size:256 Owner:0x3378 +_0 +Seg:4900 Size:256 Owner:0x337a +_0 +Seg:4a00 Size:256 Owner:0x337c +_0 +Seg:4b00 Size:256 Owner:0x337e +_0 +Seg:4c00 Size:256 Owner:0x3380 +_0 +Seg:4d00 Size:256 Owner:0x3382 +_0 +Seg:4e00 Size:256 Owner:0x3384 +_0 +Seg:4f00 Size:256 Owner:0x3386 +_0 +Seg:5000 Size:256 Owner:0x3388 +_0 +Seg:5100 Size:256 Owner:0x338a +_0 +Seg:5200 Size:256 Owner:0x338c +_0 +Seg:5300 Size:256 Owner:0x338e +_0 +Seg:5400 Size:256 Owner:0x3390 +_0 +Seg:5500 Size:256 Owner:0x3392 +_0 +Seg:5600 Size:256 Owner:0x3394 +_0 +Seg:5700 Size:256 Owner:0x3396 +_0 +Seg:5800 Size:256 Owner:0x3398 +_0 +Seg:5900 Size:256 Owner:0x339a +_0 +Seg:5a00 Size:256 Owner:0x339c +_0 +Seg:5b00 Size:256 Owner:0x339e +_0 +Seg:5c00 Size:256 Owner:0x33a0 +_0 +Seg:5d00 Size:256 Owner:0x33a2 +_0 +Seg:5e00 Size:256 Owner:0x33a4 +_0 +Seg:5f00 Size:256 Owner:0x33a6 +_0 +Seg:6000 Size:256 Owner:0x33a8 +_0 +Seg:6100 Size:256 Owner:0x33aa +_0 +Seg:6200 Size:256 Owner:0x33ac +_0 +Seg:6300 Size:256 Owner:0x33ae +_0 +Seg:6400 Size:256 Owner:0x33b0 +_0 +Seg:6500 Size:256 Owner:0x33b2 +_0 +Seg:6600 Size:256 Owner:0x33b4 +_0 +Seg:6700 Size:256 Owner:0x33b6 +_0 +Seg:6800 Size:256 Owner:0x33b8 +_0 +Seg:6900 Size:256 Owner:0x33ba +_0 +Seg:6a00 Size:256 Owner:0x33bc +_0 +Seg:6b00 Size:256 Owner:0x33be +_0 +Seg:6c00 Size:256 Owner:0x33c0 +_0 +Seg:6d00 Size:256 Owner:0x33c2 +_0 +Seg:6e00 Size:256 Owner:0x33c4 +_0 +Seg:6f00 Size:256 Owner:0x33c6 +_0 +Seg:7000 Size:256 Owner:0x33c8 +_0 +Seg:7100 Size:256 Owner:0x33ca +_0 +Seg:7200 Size:256 Owner:0x33cc +_0 +Seg:7300 Size:256 Owner:0x33ce +_0 +Seg:7400 Size:256 Owner:0x33d0 +_0 +Seg:7500 Size:256 Owner:0x33d2 +_0 +Seg:7600 Size:256 Owner:0x33d4 +_0 +Seg:7700 Size:256 Owner:0x33d6 +_0 +Seg:7800 Size:256 Owner:0x33d8 +_0 +Seg:7900 Size:256 Owner:0x33da +_0 +Seg:7a00 Size:256 Owner:0x33dc +_0 +Seg:7b00 Size:273 Owner:0x6d31 +_00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +Seg:9f3f Size:24768 Owner:0x0 +_ \ No newline at end of file diff --git a/DEBUG.16W b/DEBUG.16W new file mode 100755 index 00000000..6c2eb433 --- /dev/null +++ b/DEBUG.16W @@ -0,0 +1,212 @@ +Seg:0 Size:11373 Owner:0x0 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++_000 +Seg:2d30 Size:36 Owner:0x0 +_0 +Seg:2d54 Size:256 Owner:0x5772 +_0 +Seg:2e54 Size:256 Owner:0x1dc0 +_0 +Seg:2f54 Size:256 Owner:0x1dc2 +_0 +Seg:3054 Size:256 Owner:0x1dc4 +_0 +Seg:3154 Size:256 Owner:0x1dc6 +_0 +Seg:3254 Size:256 Owner:0x1dc8 +_0 +Seg:3354 Size:256 Owner:0x1dca +_0 +Seg:3454 Size:256 Owner:0x1dcc +_0 +Seg:3554 Size:256 Owner:0x1dce +_0 +Seg:3654 Size:256 Owner:0x1dd0 +_0 +Seg:3754 Size:256 Owner:0x1dd2 +_0 +Seg:3854 Size:256 Owner:0x1dd4 +_0 +Seg:3954 Size:256 Owner:0x1dd6 +_0 +Seg:3a54 Size:256 Owner:0x1dd8 +_0 +Seg:3b54 Size:256 Owner:0x1dda +_0 +Seg:3c54 Size:256 Owner:0x1ddc +_0 +Seg:3d54 Size:256 Owner:0x1dde +_0 +Seg:3e54 Size:256 Owner:0x1de0 +_0 +Seg:3f54 Size:256 Owner:0x1de2 +_0 +Seg:4054 Size:256 Owner:0x1de4 +_0 +Seg:4154 Size:256 Owner:0x1de6 +_0 +Seg:4254 Size:256 Owner:0x1de8 +_0 +Seg:4354 Size:256 Owner:0x1dea +_0 +Seg:4454 Size:256 Owner:0x1dec +_0 +Seg:4554 Size:256 Owner:0x1dee +_0 +Seg:4654 Size:256 Owner:0x1df0 +_0 +Seg:4754 Size:256 Owner:0x1df2 +_0 +Seg:4854 Size:256 Owner:0x1df4 +_0 +Seg:4954 Size:256 Owner:0x1df6 +_0 +Seg:4a54 Size:256 Owner:0x1df8 +_0 +Seg:4b54 Size:256 Owner:0x1dfa +_0 +Seg:4c54 Size:256 Owner:0x1dfc +_0 +Seg:4d54 Size:256 Owner:0x1dfe +_0 +Seg:4e54 Size:256 Owner:0x1e00 +_0 +Seg:4f54 Size:256 Owner:0x1e02 +_0 +Seg:5054 Size:256 Owner:0x1e04 +_0 +Seg:5154 Size:256 Owner:0x1e06 +_0 +Seg:5254 Size:256 Owner:0x1e08 +_0 +Seg:5354 Size:256 Owner:0x1e0a +_0 +Seg:5454 Size:256 Owner:0x1e0c +_0 +Seg:5554 Size:256 Owner:0x1e0e +_0 +Seg:5654 Size:256 Owner:0x1e10 +_0 +Seg:5754 Size:256 Owner:0x1e12 +_0 +Seg:5854 Size:256 Owner:0x1e14 +_0 +Seg:5954 Size:256 Owner:0x1e16 +_0 +Seg:5a54 Size:256 Owner:0x1e18 +_0 +Seg:5b54 Size:256 Owner:0x1e1a +_0 +Seg:5c54 Size:256 Owner:0x1e1c +_0 +Seg:5d54 Size:256 Owner:0x1e1e +_0 +Seg:5e54 Size:256 Owner:0x1e20 +_0 +Seg:5f54 Size:256 Owner:0x1e22 +_0 +Seg:6054 Size:256 Owner:0x1e24 +_0 +Seg:6154 Size:256 Owner:0x1e26 +_0 +Seg:6254 Size:256 Owner:0x1e28 +_0 +Seg:6354 Size:256 Owner:0x1e2a +_0 +Seg:6454 Size:256 Owner:0x1e2c +_0 +Seg:6554 Size:256 Owner:0x1e2e +_0 +Seg:6654 Size:256 Owner:0x1e30 +_0 +Seg:6754 Size:256 Owner:0x1e32 +_0 +Seg:6854 Size:256 Owner:0x1e34 +_0 +Seg:6954 Size:256 Owner:0x1e36 +_0 +Seg:6a54 Size:256 Owner:0x1e38 +_0 +Seg:6b54 Size:256 Owner:0x1e3a +_0 +Seg:6c54 Size:256 Owner:0x1e3c +_0 +Seg:6d54 Size:256 Owner:0x1e3e +_0 +Seg:6e54 Size:256 Owner:0x1e40 +_0 +Seg:6f54 Size:256 Owner:0x1e42 +_0 +Seg:7054 Size:256 Owner:0x1e44 +_0 +Seg:7154 Size:256 Owner:0x1e46 +_0 +Seg:7254 Size:256 Owner:0x1e48 +_0 +Seg:7354 Size:256 Owner:0x1e4a +_0 +Seg:7454 Size:256 Owner:0x1e4c +_0 +Seg:7554 Size:256 Owner:0x1e4e +_0 +Seg:7654 Size:256 Owner:0x1e50 +_0 +Seg:7754 Size:256 Owner:0x1e52 +_0 +Seg:7854 Size:256 Owner:0x1e54 +_0 +Seg:7954 Size:256 Owner:0x1e56 +_0 +Seg:7a54 Size:256 Owner:0x1e58 +_0 +Seg:7b54 Size:256 Owner:0x1e5a +_0 +Seg:7c54 Size:256 Owner:0x1e5c +_0 +Seg:7d54 Size:256 Owner:0x1e5e +_0 +Seg:7e54 Size:256 Owner:0x1e60 +_0 +Seg:7f54 Size:256 Owner:0x1e62 +_0 +Seg:8054 Size:256 Owner:0x1e64 +_0 +Seg:8154 Size:256 Owner:0x1e66 +_0 +Seg:8254 Size:256 Owner:0x1e68 +_0 +Seg:8354 Size:256 Owner:0x1e6a +_0 +Seg:8454 Size:256 Owner:0x1e6c +_0 +Seg:8554 Size:256 Owner:0x1e6e +_0 +Seg:8654 Size:256 Owner:0x1e70 +_0 +Seg:8754 Size:256 Owner:0x1e72 +_0 +Seg:8854 Size:256 Owner:0x1e74 +_0 +Seg:8954 Size:256 Owner:0x1e76 +_0 +Seg:8a54 Size:256 Owner:0x1e78 +_0 +Seg:8b54 Size:256 Owner:0x1e7a +_0 +Seg:8c54 Size:256 Owner:0x1e7c +_0 +Seg:8d54 Size:256 Owner:0x1e7e +_0 +Seg:8e54 Size:256 Owner:0x1e80 +_0 +Seg:8f54 Size:256 Owner:0x1e82 +_0 +Seg:9054 Size:256 Owner:0x1e84 +_0 +Seg:9154 Size:256 Owner:0x1e86 +_0 +Seg:9254 Size:882 Owner:0x17f8 +_0 +Seg:95c6 Size:401 Owner:0x1da6 +_000000000000000000000000000 +Seg:9f93 Size:24684 Owner:0x0 +_ \ No newline at end of file diff --git a/HEAP.16W b/HEAP.16W new file mode 100755 index 00000000..8efe9690 --- /dev/null +++ b/HEAP.16W @@ -0,0 +1,43 @@ + + == default == + + USED block at 284e0016 of size 136 + FREE block at 284e009e of size 22530 + USED block at 284e58a0 of size 20 + FREE block at 284e58b4 of size 8024 +OK - end of heap + + == near == + + USED block at 184dea96 of size 12 + USED block at 184deaa2 of size 364 + USED block at 184dec0e of size 52 + USED block at 184dec42 of size 20 + USED block at 184dec56 of size 20 + USED block at 184dec6a of size 20 + USED block at 184dec7e of size 20 + USED block at 184dec92 of size 20 + USED block at 184deca6 of size 4950 +OK - end of heap + + == far == + + USED block at 284e0016 of size 136 + USED block at 284e009e of size 22530 + USED block at 284e58a0 of size 20 + USED block at 284e58b4 of size 8024 +OK - end of heap + +Memory Type Total Used Free +---------------- -------- -------- -------- +Default 30710 156 30554 +Near 5478 528 4950 +Far 30710 156 30554 +---------------- -------- -------- -------- +HC_coreleft = 4948 +HC_farcoreleft = 458752 +HC_GetFreeSize = 30554 +HC_GetNearFreeSize = 4950 +HC_GetFarFreeSize = 30554 +memavl = 4948 +stackavail = 31484 diff --git a/MEMINFO.16B b/MEMINFO.16B new file mode 100755 index 00000000..e69de29b diff --git a/MEMINFO.16W b/MEMINFO.16W new file mode 100755 index 00000000..e69de29b diff --git a/MMDUMP.16B b/MMDUMP.16B new file mode 100755 index 0000000000000000000000000000000000000000..5d7e86002bf461b4d02fd43b57946b67981db688 GIT binary patch literal 2525 zcmZ|RDNaN|06;k|W8HKH$Z}*k zvK(2CB1e&<$Wi1dauhj=97T>QN0p<>QRS#|R5_{~RgNY{lcUMe5JXXIByw0245Xd|*hL}-QkbJB2Es=;2!m&T>y=gU6;bzl+1Kmk@$>HK z@^N{swLIL%Zx{+oArWq&P!+nutAZRiIc{>?d8W5_Y&m~u=xrW{j_ zDaVv!$}#0wax6KP97~QR$C6{ovEQRQfIG&!0aO^zl*R&(5=Asj3x{q1(WBq POK>nT@VNi~&%gixH`5Wz delta 139 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 diff --git a/bcexmm.prj b/bcexmm.prj index 4f33a9027c576965ad1a8e4c6b926f2b83e9f795..4ac8b0f3143c414fd0b579c479590239bd710f94 100755 GIT binary patch delta 1448 zcmbVM&ubGw6n=4urfLk$59}r}wFzw_!DvN2XiQAgq-M-k+oUH;qS8PEUc?q`730N= zkV)lT1TShp@KU5Xd#j+R&_6&?{1*f-t*kS%8?$U;TD;6GZyxV^-}m0PTgsO5=Dtm` ztk7oF_QNJ^FH@ZFuZVk7zhlmd{r55@4GG}H48Q|ica}t?-Ukq}0NlWUON(q+0nPxx zJABL{utLc9uxHuDr@*0!?Arm5= z7N^$ir1(}<-lEoyF<<4t`I*#QE;~LqcD7VVW^>ULqaFrSWLqDj)b2=P9pM+*mp0Sb z3A<}P#=J*{UN2Ei9&#E!L=H}d#TgN&ro{6=3g3E1b|ti6jDDZ*q#04=Kn9-KDV^mk zOtI-Eu;`T~HdWN&(!IpjWYorG6thEo9P|6aZ1zOuAO?6v(c$xOjIGk&nRjD(+05m? z)Fvti!WS;LD-6?cpkC9rp(l2=jlB~p->*(dR1Rbyo=WP(ufPzKBqs)~!252aC!>Ik zz^!hY#M^xtEY@TD+xaTP#oL2rF>PkEe@t34n2}IVAU0_at{r{as@h>*qiuIxm9)$& zJbWHZODR0v61R}f7p^7?h3F+v7ZxoPCxV#)zI&|%=5Dt2?3MkJ@MSP8F-`DuFfQ@m W)}c_8yStePJ=?=MG`|i9EPnvO+3E5C delta 1468 zcmbVM&ubGw6n=53q+$$h66`iH)x@TOV4(QpU}I{MZfnM@)+80Fr4dmuAc9vdL=R#O zSw!AN@Zt~fShVqA6+yv+B7%Q_UIY(9&%IPw-^`?D-NdALnVo$z`@Zjc?|r+juj|hi zoXYE(QLi|^JC&C;126QI#q&$!ndmROR%!;jrvU8F16;%9{*s8??F9%s08V4jBO}!w zfP(<=7ONC_MPJPZ0B&vr_=#(c$WkA`C%Tu%^WKs|cksQp>>>*6#a4hDbTWpAeI*gO zg**+O-2ea!mp}dv&-m) z-S$2v26ye@tmM}R;A3q2R8*`nvC2w33}*1nU}RH;7K$<8_vh@0LcT?3_C!PF3@B7| zSw^M%HuJ6A(z)TK=k33#a z6i&fA8dWLd&kVN1t~9Z`p>mn6B{4aWMR+FF5PlM#lO1!S`8s@PHx6tB@JaA;J6_2q zFN^IuIHGyqBwV~YbWtH+bL;)1({f6zf;s|Gr+v7z`~F7O7DHRDyy>iL!_dOlV_+M~ zzXrXi6^hfTVljRU%+*DQffJ$00p1i#^~nizO1~+59EvJb6Z{-XD*RWrBOK?BuaAcx MY~dQ}--d&Z-x(wLSpWb4 diff --git a/data/winrun.cfg b/data/winrun.cfg deleted file mode 100755 index be5f0482..00000000 --- a/data/winrun.cfg +++ /dev/null @@ -1,5 +0,0 @@ -[autoexec] - -mount d . -d: -scroll.exe diff --git a/makefile b/makefile index 50c4ffcb..1579ffa2 100755 --- a/makefile +++ b/makefile @@ -36,7 +36,7 @@ # serial output is plain text ASCII. DEBUGSERIAL=1 -DELLOGFILE=1 +DELLOGFILE=0 #192x144 #wwww will add these @@ -286,8 +286,8 @@ pcxtest2.exe: pcxtest2.$(OBJ) gfx.lib $(DOSLIB) #planrpcx.exe: planrpcx.$(OBJ) gfx.lib maptest.exe: maptest.$(OBJ) 16_map.$(OBJ) 16_head.$(OBJ) gfx.lib $(DOSLIB) $(16LIB) fmemtest.exe: fmemtest.$(OBJ) -exmmtest.exe: exmmtest.$(OBJ) 16_pm.$(OBJ) 16_head.$(OBJ) 16_ca.$(OBJ) 16_mm.$(OBJ) 16_hc.$(OBJ) kitten.$(OBJ) 16_vl_1.$(OBJ) 16_tail.$(OBJ) 16_in.$(OBJ) 16_dbg.$(OBJ) -#$(16LIB) gfx.lib $(DOSLIB) +exmmtest.exe: exmmtest.$(OBJ) $(16LIB) gfx.lib $(DOSLIB) +#16_pm.$(OBJ) 16_head.$(OBJ) 16_ca.$(OBJ) 16_mm.$(OBJ) 16_hc.$(OBJ) kitten.$(OBJ) 16_vl_1.$(OBJ) 16_tail.$(OBJ) 16_in.$(OBJ) 16_dbg.$(OBJ) vgmtest.exe: vgmtest.$(OBJ) vgmsnd.lib $(16LIB) $(DOSLIB) gfx.lib db.exe: db.$(OBJ) ps.exe: ps.$(OBJ) 16_head.$(OBJ) diff --git a/src/bakapi.c b/src/bakapi.c index cc26c64c..8c2b3f73 100755 --- a/src/bakapi.c +++ b/src/bakapi.c @@ -31,10 +31,6 @@ sword vgamodex_mode = 1; // 1 = 320x240 with buffer void TL_VidInit(global_game_variables_t *gvar){} //int ch=0x0; -#define SETUPPAGEBAKAPI \ -gvar.video.page[0] = modexDefaultPage(&gvar.video.page[0]); \ -gvar.video.page[1] = modexNextPage(&gvar.video.page[0]); - void main(int argc, char *argvar[]) @@ -42,9 +38,9 @@ main(int argc, char *argvar[]) static global_game_variables_t gvar; struct glob_game_vars *ggvv; char *a; - int i; - word panq=1, pand=0; - boolean panswitch=0; + int i,c; + word panq=1, pand=0,showding=0; + boolean panswitch=0,bptest=1,runding=1; ggvv=&gvar; @@ -75,52 +71,21 @@ main(int argc, char *argvar[]) } } - // DOSLIB: check our environment - probe_dos(); - - // DOSLIB: what CPU are we using? - // NTS: I can see from the makefile Sparky4 intends this to run on 8088 by the -0 switch in CFLAGS. - // So this code by itself shouldn't care too much what CPU it's running on. Except that other - // parts of this project (DOSLIB itself) rely on CPU detection to know what is appropriate for - // the CPU to carry out tasks. --J.C. - cpu_probe(); - - // DOSLIB: check for VGA - if (!probe_vga()) { - printf("VGA probe failed\n"); - return; - } - // hardware must be VGA or higher! - if (!(vga_state.vga_flags & VGA_IS_VGA)) { - printf("This program requires VGA or higher graphics hardware\n"); - return; - } - textInit(); + // initiate doslib // + TL_DosLibStartup(&gvar); // main variables values d=4; // switch variable key=2; // default screensaver number - xpos=TILEWHD; - ypos=TILEWHD; - xdir=1; - ydir=1; + xpos=TILEWHD; ypos=TILEWHD; xdir=1; ydir=1; VGAmodeX(vgamodex_mode, 0, &gvar); // TODO: Suggestion: Instead of magic numbers for the first param, might I suggest defining an enum or some #define constants that are easier to remember? --J.C. // this code is written around modex16 which so far is a better fit than using DOSLIB vga directly, so leave MXLIB code in. // we'll integrate DOSLIB vga into that part of the code instead for less disruption. -- J.C. - - bakapee.xx = rand()&0%gvar.video.page[0].width; - bakapee.yy = rand()&0%gvar.video.page[0].height; - bakapee.gq = 0; - bakapee.sx= bakapee.sy=0; - bakapee.bakax= bakapee.bakay=0; - bakapee.coor=0; - + bakapee.xx = rand()&0%gvar.video.page[0].width; bakapee.yy = rand()&0%gvar.video.page[0].height; + bakapee.gq = 0; bakapee.sx=bakapee.sy=0; bakapee.bakax=bakapee.bakay=0; bakapee.coor=0; //once where #defines - bakapee.tile=0; - bakapee.bonk=400; - bakapee.lgq=32; - bakapee.hgq=55; + bakapee.tile=0; bakapee.bonk=400; bakapee.lgq=32; bakapee.hgq=55; switch(WCPU_detectcpu()) { @@ -132,39 +97,85 @@ main(int argc, char *argvar[]) break; } - /* setup camera and screen~ */ + // setup camera and screen~ // SETUPPAGEBAKAPI - //modexPalUpdate(bmp.palette); //____ - //modexDrawBmp(VGA, 0, 0, &bmp, 0); //____ - //getch(); //____ - //VL_SetLineWidth (40, &gvar); - VL_ShowPage(&gvar.video.page[0], 1, 0); + BAKAPIINITFIZZTEST + + while (bptest) { - word w; - for(w=0;w<64000;w++) +/* if (key > 0) + {*/ + while (!kbhit() && runding) + { + //{ word w; for(w=0;w<(gvar.video.page[0].width*gvar.video.page[0].height);w++) {}} + ding(&gvar.video.page[showding], &bakapee, 4); + } + if (kbhit()) +// { + getch(); // eat keyboard input +// break; +// } +// }*/ + { - ding(&gvar.video.page[0], &bakapee, 2); -// ding(&gvar.video.page[1], &bakapee, 2); + + c = getch(); + switch (c) + { + case 27: // Escape key // + case '0': + default: + bptest = false; + break; + case 'b': // test tile change // + switch (bakapee.tile) + { + case 0: + bakapee.tile=1; + break; + case 1: + bakapee.tile=0; + break; + } + break; + case 'r': + runding = false; + BAKAPIINITFIZZTEST + break; + case 'e': + runding = 1; + break; + case 'z': + runding = false; + FIZZFADEFUN +// runding = true; + break; + case '3': + case '4': + runding = 1; + showding = c - '0' - 3; + break; + case '1': + case '2': + // case '5': + // case '6': + // case '9': + key = c - '0' - 1; + VL_ShowPage(&gvar.video.page[key], 1, 0); + break; + } } - modexClearRegion(&(gvar.video.page[1]), 0, 0, gvar.video.page[0].width, gvar.video.page[0].height, 14); - VL_ShowPage(&gvar.video.page[1], 0, 0); - while(!kbhit()){} getch(); - VL_ShowPage(&gvar.video.page[0], 0, 0); -#ifdef BAKAFIZZUNSIGNED - baka_FizzleFade (gvar.video.ofs.bufferofs, gvar.video.ofs.displayofs, gvar.video.page[0].width, gvar.video.page[0].height, 70, true, &gvar); -#else - baka_FizzleFade (&gvar.video.page[1], &gvar.video.page[0], vga_state.vga_width, vga_state.vga_height, 70, true, &gvar); -#endif } - while(!kbhit()){} + + +//while(!kbhit()){} // screen savers //#ifdef BOINK while(d>0) // on! { - int c; /* run screensaver routine until keyboard input */ while (key > 0) { if (kbhit()) { @@ -180,7 +191,7 @@ main(int argc, char *argvar[]) { ding(&gvar.video.page[1], &bakapee, 4); ding(&gvar.video.page[0], &bakapee, 4); - baka_FizzleFade (gvar.video.ofs.bufferofs, gvar.video.ofs.displayofs, gvar.video.page[0].width, gvar.video.page[0].height, 70, true, &gvar); + FIZZFADEFUN }else ding(&gvar.video.page[0], &bakapee, key); } else ding(&gvar.video.page[0], &bakapee, 2); if(panswitch!=0) diff --git a/src/bakapi.h b/src/bakapi.h index 0795f6c7..484646d7 100755 --- a/src/bakapi.h +++ b/src/bakapi.h @@ -30,5 +30,24 @@ //project 16 testing define switch for veiwing the contents of the video memory --sparky4 #define BOINK // what does this mean? --J.C. +//#define BDOFSCONV (unsigned __near) defed in 16_tdef +#define BOFSS BDOFSCONV (gvar.video.BOFS)//gvar.video.ofs.bufferofs +#define DOFSS BDOFSCONV (gvar.video.DOFS)//gvar.video.ofs.displayofs + +#define SETUPPAGEBAKAPI \ +gvar.video.page[0] = modexDefaultPage(&gvar.video.page[0]); \ +gvar.video.page[1] = modexNextPage(&gvar.video.page[0]); + +#ifdef BAKAFIZZUNSIGNED +#define FIZZFADEFUN baka_FizzleFade (BOFSS, DOFSS, gvar.video.page[0].width, gvar.video.page[0].height, 70, true, &gvar); +#else +#define FIZZFADEFUN baka_FizzleFade (&gvar.video.page[1], &gvar.video.page[0], vga_state.vga_width, vga_state.vga_height, 70, true, &gvar); +#endif + +#define BAKAPIINITFIZZTEST \ + modexClearRegion(&(gvar.video.page[0]), 0, 0, gvar.video.page[0].width, gvar.video.page[0].height, 0); \ + modexClearRegion(&(gvar.video.page[1]), 0, 0, gvar.video.page[0].width, gvar.video.page[0].height, 14); \ + FIZZFADEFUN +//{ word w; for(w=0;w<(gvar.video.page[0].width*gvar.video.page[0].height);w++) { ding(&gvar.video.page[0], &bakapee, 2); } #endif /*__BAKAPI_H__*/ diff --git a/src/exmmtest.c b/src/exmmtest.c index fd849790..98708a88 100755 --- a/src/exmmtest.c +++ b/src/exmmtest.c @@ -44,11 +44,12 @@ //#define EXMMVERBOSE__ // #define PRINTBBDUMP #define BUFFDUMP + #ifdef __BORLANDC__ #define NOVID #endif #ifdef __WATCOMC__ -#define NOVID +//#define NOVID #endif @@ -69,8 +70,8 @@ //////////////////////////////////////////////////////////////////////////// #ifdef NOVID -void VL_Startup (global_game_variables_t *gvar){} -void VL_Shutdown (global_game_variables_t *gvar){} +void VL_Startup (global_game_variables_t *gvar){ gvar=gvar; } +void VL_Shutdown (global_game_variables_t *gvar){ gvar=gvar; } void VGAmodeX(sword vq, boolean cmem, global_game_variables_t *gv) { printf("VGAmodeX dummy:\n %Fp %Fp %Fp\n", &vq, &cmem, gv); @@ -297,7 +298,7 @@ PRINTBB; KEYP VGAmodeX(0, 0, &gvar); #endif #endif -// MM_ShowMemory(&gvar); + MM_ShowMemory(&gvar); DebugMemory_(&gvar, 1); MM_DumpData(&gvar); MM_Report_(&gvar); diff --git a/src/lib/16_head.c b/src/lib/16_head.c index f0175d43..8786a9fd 100755 --- a/src/lib/16_head.c +++ b/src/lib/16_head.c @@ -34,6 +34,13 @@ filesize(FILE *fp) return(size_of_file); } +// clrstdin() clear any leftover chars tha may be in stdin stream // +void clrstdin() +{ + int ch = 0; + while( ( ch = getchar() ) != '\n' && ch != EOF ); +} + //from http://stackoverflow.com/questions/2736753/how-to-remove-extension-from-file-name // remove_ext: removes the "extension" from a file spec. // mystr is the string to process. @@ -49,7 +56,6 @@ char *remove_ext (char* mystr, char dot, char sep) { char *retstr, *lastdot, *lastsep; // Error checks and allocate string. - if (mystr == NULL) return NULL; if ((retstr = malloc(strlen (mystr) + 1)) == NULL) @@ -85,7 +91,6 @@ char *remove_ext (char* mystr, char dot, char sep) { } - //from http://quiz.geeksforgeeks.org/c-program-cyclically-rotate-array-one/ void rotateR(byte *arr, byte n) { @@ -148,7 +153,7 @@ US_CheckParm(char *parm,char **strings) return(-1); } - +// for input test // byte dirchar(byte in) { byte out; diff --git a/src/lib/16_head.h b/src/lib/16_head.h index 9fcf3668..0f0c74f7 100755 --- a/src/lib/16_head.h +++ b/src/lib/16_head.h @@ -197,8 +197,9 @@ typedef union REGPACK regs_t; #define INPUT_STATUS_1 0x03da -/* local function */ +// local function // long int filesize(FILE *fp); +void clrstdin(); char *remove_ext(char* mystr, char dot, char sep); void rotateR(byte arr[], byte n); void rotateL(byte arr[], byte n); diff --git a/src/lib/16_in.c b/src/lib/16_in.c index a3e3fabd..c543caf9 100755 --- a/src/lib/16_in.c +++ b/src/lib/16_in.c @@ -169,6 +169,7 @@ static Direction DirTable[] = // Quick lookup for total direction static void (*INL_KeyHook)(void); static void interrupt (*OldKeyVect)(void); static char *ParmStringsIN[] = {"nojoys","nomouse",nil}; +static void INL_StartKbd(void); // Internal routines diff --git a/src/lib/16_mm.c b/src/lib/16_mm.c index 8ee134f0..7bd320ba 100755 --- a/src/lib/16_mm.c +++ b/src/lib/16_mm.c @@ -1241,7 +1241,7 @@ void MM_SortMem(global_game_variables_t *gvar) if(aftersort) aftersort(); -// VW_ColorBorder (oldborder); + VL_ColorBorder (oldborder, &gvar->video); /*++++ if(playing) MM_SetLock((memptr *)&audiosegs[playing],false);*/ @@ -1258,17 +1258,20 @@ void MM_SortMem(global_game_variables_t *gvar) */ //#define MMSMSORTNEWTYPE +#define MMSHOWMEMOFFSET 0//(gvar->video.page[0].dx+(gvar->video.page[0].dy*gvar->video.page[0].stridew)) void MM_ShowMemory(global_game_variables_t *gvar) { mmblocktype far *scan; - unsigned color,temp,x,y,w; + unsigned color,temp,x,y ,w;//,bofstemp; sdword end,owner; byte scratch[160],scratch0[4096],str[16]; -// VL_SetLineWidth(40, gvar); - temp = gvar->video.ofs.bufferofs; - gvar->video.ofs.bufferofs = gvar->video.ofs.displayofs; +//-- VL_SetLineWidth(40, gvar); + //temp = gvar->video.ofs.bufferofs; + //gvar->video.ofs.bufferofs = gvar->video.ofs.displayofs; + temp = BDOFSCONV gvar->video.BOFS+MMSHOWMEMOFFSET; + gvar->video.BOFS = gvar->video.DOFS; scan = gvar->mm.mmhead; end = -1; w = 0; @@ -1303,13 +1306,14 @@ void MM_ShowMemory(global_game_variables_t *gvar) write(gvar->handle.debughandle,scratch,strlen(scratch)); Quit (gvar, "MM_ShowMemory: Memory block order currupted!"); } -#ifndef MMSMSORTNEWTYPE - end = scan->length-1; -#else +#ifdef MMSMSORTNEWTYPE end = scan->start+(scan->length)-1; +#else + end = scan->length-1; #endif - y = scan->start/320; - x = scan->start%320; + if(!gvar->video.page[0].width) gvar->video.page[0].width = 352; + y = scan->start/gvar->video.page[0].width; + x = scan->start%gvar->video.page[0].width; VW_Hlin(x,x+end,y,color,gvar); VL_Plot(x,y,15,gvar); for(w=(scan->start)/80;w<=end/80;w++) @@ -1317,7 +1321,8 @@ void MM_ShowMemory(global_game_variables_t *gvar) //printf("+ %u %lu\n", w, scan->length); strcat(scratch0, "+"); } -//++==++==optional strcat(scratch0, AARESET); strcat(scratch0, AAGREY); strcat(scratch0,"_"); + //++==++==optional + strcat(scratch0, AARESET); strcat(scratch0, AAGREY); strcat(scratch0,"_"); #ifdef MMSMSORTNEWTYPE if (scan->next && scan->next->start > end+1) #else @@ -1360,9 +1365,11 @@ void MM_ShowMemory(global_game_variables_t *gvar) strcat(scratch,"Seg:"); ultoa (scan->start,str,16); strcat (scratch,str); +// strcat(scratch, AABLACK); strcat(scratch,"\t"); strcat(scratch, AARESET); strcat (scratch,"\tSize:"); ultoa ((unsigned)scan->length,str,10); strcat (scratch,str); +// strcat(scratch, AABLACK); strcat(scratch,"\t"); strcat(scratch, AARESET); strcat (scratch,"\tOwner:0x"); owner = (unsigned)scan->useptr; ultoa (owner,str,16); @@ -1378,8 +1385,11 @@ void MM_ShowMemory(global_game_variables_t *gvar) CA_CloseDebug (gvar); IN_Ack(gvar); -//**** VW_SetLineWidth(64); - gvar->video.ofs.bufferofs = temp; +//-- VW_SetLineWidth(64); + //gvar->video.ofs.bufferofs = temp; + //bofstemp = BDOFSCONV gvar->video.BOFS;//+MMSHOWMEMOFFSET; + //bofstemp = temp; + gvar->video.BOFS = (byte __far *)temp; } diff --git a/src/lib/16_tail.c b/src/lib/16_tail.c index ec7023c8..6b08e0fb 100755 --- a/src/lib/16_tail.c +++ b/src/lib/16_tail.c @@ -243,27 +243,38 @@ void Shutdown16(global_game_variables_t *gvar) =================== */ -#define PIXPERFRAME 1600 - boolean FizzleFade (unsigned source, unsigned dest, unsigned width, unsigned height, unsigned frames, boolean abortable, global_game_variables_t *gvar) { word p,pixperframe; unsigned drawofs,pagedelta; byte mask,maskb[8] = {1,2,4,8}; - unsigned x,y,frame ,esorig,q; - dword rndval; - word screenseg = SCREENSEG; + unsigned x,y,frame; + long rndval; + word screenseg; +#ifdef __WATCOMC__ + unsigned esorig;//,q; +#endif pagedelta = dest-source; - rndval = 1; esorig = 0; q = 16; + rndval = 1; +#ifdef __WATCOMC__ + esorig = 0;// q = 16; +#endif x = y = 0; - pixperframe = 76800/(dword)frames; + pixperframe = (dword)(gvar->video.page[0].width*gvar->video.page[0].height)/frames; + screenseg = SCREENSEG; IN_StartAck (gvar); +// modexClearRegion(&(gvar->video.page[0]), 0, 0, gvar->video.page[0].width, gvar->video.page[0].height, 0); +// modexClearRegion(&(gvar->video.page[1]), 0, 0, gvar->video.page[0].width, gvar->video.page[0].height, 15); + +#ifdef __WATCOMC__ __asm { mov [esorig],es } +#endif +// TimeCount= frame=0; do // while (1) { @@ -308,22 +319,19 @@ noxor: mov [WORD PTR rndval+2],dx } - if ((x>width || y>height) && (xwidth || y>height) +// if ((x>width || y>height) && (xvideo.ofs.ylookup[y]) + (x>>2); +// drawofs = source+(gvar->video.ofs.ylookup[y]) + (x>>2); drawofs = source+(y*gvar->video.page[0].stridew) + (x>>2); // // copy one pixel // -//* mask = x&3; VGAREADMAP(mask); mask = maskb[mask]; VGAMAPMASK(mask); -//*/ -// modexputPixel(&(gvar->video.page[0]), x, y, rand()%8); -// VL_Plot (x, y, 15, &(gvar->video.ofs)); __asm { mov di,[drawofs] @@ -337,11 +345,14 @@ noxor: } frame++; //-- while (TimeCountDLStarted) + return; // DOSLIB: check our environment probe_dos(); @@ -60,6 +71,24 @@ void TL_VidInit(global_game_variables_t *gvar) _DEBUGF("Serial debug output printf test %u %u %u\n",1U,2U,3U); textInit(); + gvar->DLStarted = true; +} + +//=========================================================================== + +/* +==================== += += TL_VidInit += +==================== +*/ + +void TL_VidInit(global_game_variables_t *gvar) +{ + start_timer(gvar); + + if(!gvar->DLStarted) TL_DosLibStartup(gvar); // get old video mode //in.h.ah = 0xf; diff --git a/src/lib/16_tdef.h b/src/lib/16_tdef.h index 7ed1ae7d..fe5083a5 100755 --- a/src/lib/16_tdef.h +++ b/src/lib/16_tdef.h @@ -37,6 +37,10 @@ #define MAXPAGE 4 +#define BDOFSCONV (unsigned __near) +#define BOFS page[1].data +#define DOFS page[0].data + /* * typedefs of the game variables! */ @@ -380,8 +384,9 @@ typedef struct //ylookup[MAXSCANLINES], unsigned int offscreen_ofs; unsigned int pattern_ofs; - unsigned bufferofs,linewidth,displayofs; +// unsigned bufferofs,linewidth,displayofs; pan_t pan; + } ofs_t; //unfinished typedef struct @@ -717,6 +722,7 @@ typedef struct glob_game_vars player_t player[MaxPlayers]; // player vars map_view_t mv[4]; // sw_t sw; + boolean DLStarted; } global_game_variables_t; #ifdef __WATCOMC__ diff --git a/src/lib/16_vl.c b/src/lib/16_vl.c index 88a153cb..882dd3d2 100755 --- a/src/lib/16_vl.c +++ b/src/lib/16_vl.c @@ -351,9 +351,9 @@ void modexEnter(sword vq, boolean cmem, global_game_variables_t *gv) } break; } -// VL_SetLineWidth (cm.offset, gv); - gv->video.ofs.displayofs = 0; - gv->video.ofs.bufferofs = gv->video.page[0].width*gv->video.page[0].height;//gvar->video.page[0].pagesize; +//-- VL_SetLineWidth (cm.offset, gv); + //gv->video.ofs.displayofs = 0; + //gv->video.ofs.bufferofs = gv->video.page[0].width*gv->video.page[0].height;//gvar->video.page[0].pagesize; // gv->video.curr_mode=vq; gv->video.VL_Started=1; } @@ -1033,6 +1033,7 @@ modexPalOverscan(word col) outp(PAL_DATA_REG, col); return col; } + //check 16_vl_1.c void modexputPixel(page_t *page, int x, int y, byte color) diff --git a/src/lib/16_vl.h b/src/lib/16_vl.h index a4337fea..6437e1b9 100755 --- a/src/lib/16_vl.h +++ b/src/lib/16_vl.h @@ -214,6 +214,7 @@ void modexPalWhite(); void modexPalUpdate(byte *p); void VL_modexPalScramble(byte *p); word modexPalOverscan(word col); +void VL_ColorBorder (int color, video_t *v); void VL_Plot (int x, int y, int color, global_game_variables_t *gvar); void VL_Hlin (unsigned x, unsigned y, unsigned width, unsigned color, global_game_variables_t *gvar); void VL_Vlin (int x, int y, int height, int color, global_game_variables_t *gvar); diff --git a/src/lib/16_vl_1.c b/src/lib/16_vl_1.c index 0ad22064..a1257fdc 100755 --- a/src/lib/16_vl_1.c +++ b/src/lib/16_vl_1.c @@ -483,6 +483,25 @@ void VL_TestPaletteSet (video_t *v) v->fastpalette = false; } +/* +================== += += VL_ColorBorder += +================== +*/ + +void VL_ColorBorder (int color, video_t *v) +{ + union REGS in, out; + + in.h.ah = 0x10; + in.h.al = 0x01; + in.h.bh = color; + int86(0x10, &in, &out); + v->bordercolor = color; +} + /* ============================================================================= @@ -507,10 +526,13 @@ void VL_Plot (int x, int y, int color, global_game_variables_t *gvar) byte mask; VCLIPDEF + if(!gvar->video.VL_Started) return; + mask = pclip[x&3]; VGAMAPMASK(mask); //*(byte far *)MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+(gvar->video.ofs.ylookup[y]+(x>>2))) = color; - *(byte far *)MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+((y*gvar->video.page[0].stridew)+(x>>2))) = color; + //*(byte far *)MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+((y*gvar->video.page[0].stridew)+(x>>2))) = color; + *(byte far *)MK_FP(SCREENSEG,BDOFSCONV gvar->video.BOFS+((y*gvar->video.page[0].stridew)+(x>>2))) = color; VGAMAPMASK(15); } @@ -532,13 +554,15 @@ void VL_Hlin (unsigned x, unsigned y, unsigned width, unsigned color, global_gam LRCLIPDEF + if(!gvar->video.VL_Started) return; + xbyte = x>>2; leftmask = lclip[x&3]; rightmask = rclip[(x+width-1)&3]; midbytes = ((x+width+3)>>2) - xbyte - 2; //dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+gvar->video.ofs.ylookup[y]+xbyte); - dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+(y*gvar->video.page[0].stridew)+xbyte); + dest = MK_FP(SCREENSEG,BDOFSCONV gvar->video.BOFS+(y*gvar->video.page[0].stridew)+xbyte); if (midbytes<0) { @@ -576,16 +600,19 @@ void VL_Vlin (int x, int y, int height, int color, global_game_variables_t *gvar byte far *dest,mask; VCLIPDEF + if(!gvar->video.VL_Started) return; + mask = pclip[x&3]; VGAMAPMASK(mask); //dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+gvar->video.ofs.ylookup[y]+(x>>2)); - dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+(y*gvar->video.page[0].stridew)+(x>>2)); + dest = MK_FP(SCREENSEG,BDOFSCONV gvar->video.BOFS+(y*gvar->video.page[0].stridew)+(x>>2)); while (height--) { *dest = color; - dest += gvar->video.ofs.linewidth; + //dest += gvar->video.ofs.linewidth; + dest += gvar->video.page[0].stridew; } VGAMAPMASK(15); @@ -608,13 +635,16 @@ void VL_Bar (int x, int y, int width, int height, int color, global_game_variabl LRCLIPDEF + if(!gvar->video.VL_Started) return; + leftmask = lclip[x&3]; rightmask = rclip[(x+width-1)&3]; midbytes = ((x+width+3)>>2) - (x>>2) - 2; - linedelta = gvar->video.ofs.linewidth-(midbytes+1); + //linedelta = gvar->video.ofs.linewidth-(midbytes+1); + linedelta = gvar->video.page[0].stridew-(midbytes+1); //dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+gvar->video.ofs.ylookup[y]+(x>>2)); - dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+(y*gvar->video.page[0].stridew)+(x>>2)); + dest = MK_FP(SCREENSEG,BDOFSCONV gvar->video.BOFS+(y*gvar->video.page[0].stridew)+(x>>2)); if (midbytes<0) { @@ -623,7 +653,8 @@ void VL_Bar (int x, int y, int width, int height, int color, global_game_variabl while (height--) { *dest = color; - dest += gvar->video.ofs.linewidth; + //dest += gvar->video.ofs.linewidth; + dest += gvar->video.page[0].stridew; } VGAMAPMASK(15); return; @@ -666,7 +697,7 @@ void VL_MemToScreen (byte far *source, int width, int height, int x, int y, glob width>>=2; //dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+gvar->video.ofs.ylookup[y]+(x>>2)); - dest = MK_FP(SCREENSEG,gvar->video.ofs.bufferofs+(y*gvar->video.page[0].stridew)+(x>>2)); + dest = MK_FP(SCREENSEG,BDOFSCONV gvar->video.BOFS+(y*gvar->video.page[0].stridew)+(x>>2)); mask = 1 << (x&3); for (plane = 0; plane<4; plane++) @@ -677,7 +708,8 @@ void VL_MemToScreen (byte far *source, int width, int height, int x, int y, glob mask = 1; screen = dest; - for (y=0;yvideo.ofs.linewidth,source+=width) + //for (y=0;yvideo.ofs.linewidth,source+=width) + for (y=0;yvideo.page[0].stridew,source+=width) _fmemcpy (screen,source,width); } } diff --git a/src/lib/bakapee.c b/src/lib/bakapee.c index 26d7c802..3236d8d3 100755 --- a/src/lib/bakapee.c +++ b/src/lib/bakapee.c @@ -54,40 +54,45 @@ char global_temp_status_text2[512]; */ //extern ControlInfo c; -#define PIXPOSX gvar->video.page[0].sw/2 -#define PIXPOSY gvar->video.page[0].sh/2 +//#define PIXPOSX gvar->video.page[0].sw/2 +//#define PIXPOSY gvar->video.page[0].sh/2 #ifdef BAKAFIZZUNSIGNED boolean baka_FizzleFade (unsigned source, unsigned dest, unsigned width, unsigned height, unsigned frames, boolean abortable, global_game_variables_t *gvar) { word p,pixperframe; unsigned drawofs,pagedelta; byte mask,maskb[8] = {1,2,4,8}; - unsigned x,y,frame ,esorig,q; - dword rndval; - word screenseg = SCREENSEG; + unsigned x,y,frame; + long rndval; + word screenseg; +#ifdef __WATCOMC__ + unsigned esorig;//,q; +#endif pagedelta = dest-source; - rndval = 1; esorig = 0; q = 16; + rndval = 1; +#ifdef __WATCOMC__ + esorig = 0;// q = 16; +#endif x = y = 0; - pixperframe = /*64000*/76800/(dword)frames; - -// IN_StartAck (); + pixperframe = (dword)(gvar->video.page[0].width*gvar->video.page[0].height)/frames;//64000/(dword)frames; + screenseg = SCREENSEG; -// VL_ShowPage(&(gvar->video.page[0]), 1, 0); -// VL_ShowPage(&(gvar->video.page[1]), 1, 0); +// IN_StartAck (gvar); // modexClearRegion(&(gvar->video.page[0]), 0, 0, gvar->video.page[0].width, gvar->video.page[0].height, 0); // modexClearRegion(&(gvar->video.page[1]), 0, 0, gvar->video.page[0].width, gvar->video.page[0].height, 15); -// VL_SetLineWidth(44, gvar); +#ifdef __WATCOMC__ __asm { mov [esorig],es } +#endif // TimeCount= frame=0; do // while (1) { - if (abortable && kbhit())//IN_CheckAck () ) + if (abortable && kbhit())//IN_CheckAck (gvar) ) return true; __asm { @@ -128,12 +133,10 @@ noxor: mov [WORD PTR rndval+2],dx } -// if (x>destpage->width || y>destpage->height) -// if (xsw || ysh) - if ((x>width || y>height) && (xwidth || y>height) +// if ((x>width || y>height) && (xvideo.ofs.ylookup[y]) + (x>>2); - //drawofs = source+((y+1)*gvar->video.page[0].stridew) + (x>>2); +// drawofs = source+(gvar->video.ofs.ylookup[y]) + (x>>2); drawofs = source+(y*gvar->video.page[0].stridew) + (x>>2); /* sprintf(global_temp_status_text, "draw - %Fp", drawofs); @@ -166,15 +169,17 @@ modexprint(&(gvar->video.page[0]), PIXPOSX, q+PIXPOSY, 1, 0, 47, 0, 1, global_te } frame++; //-- while (TimeCountDLStarted) + return; + + // DOSLIB: check our environment + probe_dos(); + + // DOSLIB: what CPU are we using? + // NTS: I can see from the makefile Sparky4 intends this to run on 8088 by the -0 switch in CFLAGS. + // So this code by itself shouldn't care too much what CPU it's running on. Except that other + // parts of this project (DOSLIB itself) rely on CPU detection to know what is appropriate for + // the CPU to carry out tasks. --J.C. + cpu_probe(); + + // DOSLIB: check for VGA + if (!probe_vga()) { + printf("VGA probe failed\n"); + return; + } + // hardware must be VGA or higher! + if (!(vga_state.vga_flags & VGA_IS_VGA)) { + printf("This program requires VGA or higher graphics hardware\n"); + return; + } + + textInit(); + gvar->DLStarted = true; +} + //color ‚Ä‚·‚Æ void colortest(page_t *page, bakapee_t *pee) { diff --git a/src/lib/bakapee.h b/src/lib/bakapee.h index 2626e708..808bdb36 100755 --- a/src/lib/bakapee.h +++ b/src/lib/bakapee.h @@ -48,6 +48,7 @@ boolean baka_FizzleFade (unsigned source, unsigned dest, unsigned width, unsigne boolean baka_FizzleFade (page_t *sourcepage, page_t *destpage, unsigned width, unsigned height, unsigned frames, boolean abortable, global_game_variables_t *gvar); #endif void clrstdin(); +void TL_DosLibStartup(global_game_variables_t *gvar); void colortest(page_t *page, bakapee_t *pee); void colorz(page_t *page, bakapee_t *pee); void ssd(page_t *page, bakapee_t *pee, word svq); diff --git a/src/lib/scroll16.c b/src/lib/scroll16.c index 4e9577bb..35062f70 100755 --- a/src/lib/scroll16.c +++ b/src/lib/scroll16.c @@ -1058,7 +1058,6 @@ void player_walk(player_t *player, map_view_t *map_v){ */ - void mapScroll(map_view_t *mv, player_t *player) { //word x, y; /* coordinate for drawing */ diff --git a/src/xcroll.c b/src/xcroll.c index 7b97a9af..891f15cd 100755 --- a/src/xcroll.c +++ b/src/xcroll.c @@ -125,13 +125,24 @@ void main(int argc, char *argv[]) #ifdef FADE modexPalSave(&gvar.video.palette); modexSavePalFile("data/g.pal", &gvar.video.palette); - modexPalBlack(); //so gvar.player will not see loadings~ + modexPalBlack(); //so player will not see loadings~ #endif // setup camera and screen~ modexHiganbanaPageSetup(&gvar.video); ZC_MVSetup(&gvar.mv, &map, &gvar); +#ifdef FADE + modexFadeOn(4, &gvar.video.palette); +#endif + + IN_StartAck (&gvar); + MM_ShowMemory(&gvar); + while (!IN_CheckAck (&gvar)){} +#ifdef FADE + modexPalBlack(); //so player will not see loadings~ +#endif + // set up paging //TODO: LOAD map data and position the map in the middle of the screen if smaller then screen mapGoTo(&gvar.mv, 0, 0); @@ -153,6 +164,7 @@ void main(int argc, char *argv[]) // while(!gvar.in.inst->Keyboard[sc_Escape) && !gvar.in.inst->Keyboard[sc_Space) && !gvar.in.inst->Keyboard[sc_Enter]){ FUNCTIONKEYSHOWMV } gvar.video.page[0].tlx=gvar.mv[0].tx*TILEWH; gvar.video.page[0].tly=gvar.mv[0].ty*TILEWH; + shinku(&gvar); //modexpdump(gvar.mv[0].page); #ifdef FADE -- 2.39.5