From cabce5636cbc1c69426cc29dc4a3d4ea9bcbde73 Mon Sep 17 00:00:00 2001 From: sparky4 Date: Wed, 12 Oct 2016 12:15:37 -0500 Subject: [PATCH] zcroll work starting --- DEBUG.16B | 248 +++++++++++++++++----------------- DEBUG.16W | 222 +++++++++++++++---------------- HEAP.16W | 52 ++++---- MMDUMP.16B | Bin 2550 -> 2550 bytes makefile | 3 + src/lib/jsmn | 2 +- src/zcroll.c | 369 +++++++++++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 634 insertions(+), 262 deletions(-) diff --git a/DEBUG.16B b/DEBUG.16B index 7dee836b..c7bd7809 100755 --- a/DEBUG.16B +++ b/DEBUG.16B @@ -1,208 +1,208 @@ -Seg:0 Size:5360 Owner:0x0 -+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++0 -Seg:14f0 Size:256 Owner:0xed5 +Seg:0 Size:5151 Owner:0x0 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++0 +Seg:141f Size:256 Owner:0xed5 ++++ -Seg:15f0 Size:256 Owner:0xcd6 +Seg:151f Size:256 Owner:0xcd6 ++++ -Seg:16f0 Size:256 Owner:0xcd8 +Seg:161f Size:256 Owner:0xcd8 ++++ -Seg:17f0 Size:256 Owner:0xcda +Seg:171f Size:256 Owner:0xcda ++++++ +Seg:181f Size:256 Owner:0xcdc ++++ -Seg:18f0 Size:256 Owner:0xcdc +Seg:191f Size:256 Owner:0xcde ++++ -Seg:19f0 Size:256 Owner:0xcde +Seg:1a1f Size:256 Owner:0xce0 ++++ -Seg:1af0 Size:256 Owner:0xce0 +Seg:1b1f Size:256 Owner:0xce2 ++++ -Seg:1bf0 Size:256 Owner:0xce2 +Seg:1c1f Size:256 Owner:0xce4 ++++++ +Seg:1d1f Size:256 Owner:0xce6 ++++ -Seg:1cf0 Size:256 Owner:0xce4 +Seg:1e1f Size:256 Owner:0xce8 ++++ -Seg:1df0 Size:256 Owner:0xce6 +Seg:1f1f Size:256 Owner:0xcea ++++ -Seg:1ef0 Size:256 Owner:0xce8 +Seg:201f Size:256 Owner:0xcec ++++ -Seg:1ff0 Size:256 Owner:0xcea +Seg:211f Size:256 Owner:0xcee ++++++ +Seg:221f Size:256 Owner:0xcf0 ++++ -Seg:20f0 Size:256 Owner:0xcec +Seg:231f Size:256 Owner:0xcf2 ++++ -Seg:21f0 Size:256 Owner:0xcee +Seg:241f Size:256 Owner:0xcf4 ++++ -Seg:22f0 Size:256 Owner:0xcf0 +Seg:251f Size:256 Owner:0xcf6 ++++ -Seg:23f0 Size:256 Owner:0xcf2 +Seg:261f Size:256 Owner:0xcf8 ++++++ +Seg:271f Size:256 Owner:0xcfa ++++ -Seg:24f0 Size:256 Owner:0xcf4 +Seg:281f Size:256 Owner:0xcfc ++++ -Seg:25f0 Size:256 Owner:0xcf6 +Seg:291f Size:256 Owner:0xcfe ++++ -Seg:26f0 Size:256 Owner:0xcf8 +Seg:2a1f Size:256 Owner:0xd00 ++++ -Seg:27f0 Size:256 Owner:0xcfa +Seg:2b1f Size:256 Owner:0xd02 ++++++ +Seg:2c1f Size:256 Owner:0xd04 ++++ -Seg:28f0 Size:256 Owner:0xcfc +Seg:2d1f Size:256 Owner:0xd06 ++++ -Seg:29f0 Size:256 Owner:0xcfe +Seg:2e1f Size:256 Owner:0xd08 ++++ -Seg:2af0 Size:256 Owner:0xd00 +Seg:2f1f Size:256 Owner:0xd0a ++++ -Seg:2bf0 Size:256 Owner:0xd02 +Seg:301f Size:256 Owner:0xd0c ++++++ +Seg:311f Size:256 Owner:0xd0e ++++ -Seg:2cf0 Size:256 Owner:0xd04 +Seg:321f Size:256 Owner:0xd10 ++++ -Seg:2df0 Size:256 Owner:0xd06 +Seg:331f Size:256 Owner:0xd12 ++++ -Seg:2ef0 Size:256 Owner:0xd08 +Seg:341f Size:256 Owner:0xd14 ++++ -Seg:2ff0 Size:256 Owner:0xd0a +Seg:351f Size:256 Owner:0xd16 ++++++ +Seg:361f Size:256 Owner:0xd18 ++++ -Seg:30f0 Size:256 Owner:0xd0c +Seg:371f Size:256 Owner:0xd1a ++++ -Seg:31f0 Size:256 Owner:0xd0e +Seg:381f Size:256 Owner:0xd1c ++++ -Seg:32f0 Size:256 Owner:0xd10 +Seg:391f Size:256 Owner:0xd1e ++++ -Seg:33f0 Size:256 Owner:0xd12 +Seg:3a1f Size:256 Owner:0xd20 ++++++ +Seg:3b1f Size:256 Owner:0xd22 ++++ -Seg:34f0 Size:256 Owner:0xd14 +Seg:3c1f Size:256 Owner:0xd24 ++++ -Seg:35f0 Size:256 Owner:0xd16 +Seg:3d1f Size:256 Owner:0xd26 ++++ -Seg:36f0 Size:256 Owner:0xd18 +Seg:3e1f Size:256 Owner:0xd28 ++++ -Seg:37f0 Size:256 Owner:0xd1a +Seg:3f1f Size:256 Owner:0xd2a ++++++ +Seg:401f Size:256 Owner:0xd2c ++++ -Seg:38f0 Size:256 Owner:0xd1c +Seg:411f Size:256 Owner:0xd2e ++++ -Seg:39f0 Size:256 Owner:0xd1e +Seg:421f Size:256 Owner:0xd30 ++++ -Seg:3af0 Size:256 Owner:0xd20 +Seg:431f Size:256 Owner:0xd32 ++++ -Seg:3bf0 Size:256 Owner:0xd22 +Seg:441f Size:256 Owner:0xd34 ++++++ +Seg:451f Size:256 Owner:0xd36 ++++ -Seg:3cf0 Size:256 Owner:0xd24 +Seg:461f Size:256 Owner:0xd38 ++++ -Seg:3df0 Size:256 Owner:0xd26 +Seg:471f Size:256 Owner:0xd3a ++++ -Seg:3ef0 Size:256 Owner:0xd28 +Seg:481f Size:256 Owner:0xd3c ++++ -Seg:3ff0 Size:256 Owner:0xd2a +Seg:491f Size:256 Owner:0xd3e ++++++ +Seg:4a1f Size:256 Owner:0xd40 ++++ -Seg:40f0 Size:256 Owner:0xd2c +Seg:4b1f Size:256 Owner:0xd42 ++++ -Seg:41f0 Size:256 Owner:0xd2e +Seg:4c1f Size:256 Owner:0xd44 ++++ -Seg:42f0 Size:256 Owner:0xd30 +Seg:4d1f Size:256 Owner:0xd46 ++++ -Seg:43f0 Size:256 Owner:0xd32 +Seg:4e1f Size:256 Owner:0xd48 ++++++ +Seg:4f1f Size:256 Owner:0xd4a ++++ -Seg:44f0 Size:256 Owner:0xd34 +Seg:501f Size:256 Owner:0xd4c ++++ -Seg:45f0 Size:256 Owner:0xd36 +Seg:511f Size:256 Owner:0xd4e ++++ -Seg:46f0 Size:256 Owner:0xd38 +Seg:521f Size:256 Owner:0xd50 ++++ -Seg:47f0 Size:256 Owner:0xd3a +Seg:531f Size:256 Owner:0xd52 ++++++ +Seg:541f Size:256 Owner:0xd54 ++++ -Seg:48f0 Size:256 Owner:0xd3c +Seg:551f Size:256 Owner:0xd56 ++++ -Seg:49f0 Size:256 Owner:0xd3e +Seg:561f Size:256 Owner:0xd58 ++++ -Seg:4af0 Size:256 Owner:0xd40 +Seg:571f Size:256 Owner:0xd5a ++++ -Seg:4bf0 Size:256 Owner:0xd42 +Seg:581f Size:256 Owner:0xd5c ++++++ +Seg:591f Size:256 Owner:0xd5e ++++ -Seg:4cf0 Size:256 Owner:0xd44 +Seg:5a1f Size:256 Owner:0xd60 ++++ -Seg:4df0 Size:256 Owner:0xd46 +Seg:5b1f Size:256 Owner:0xd62 ++++ -Seg:4ef0 Size:256 Owner:0xd48 +Seg:5c1f Size:256 Owner:0xd64 ++++ -Seg:4ff0 Size:256 Owner:0xd4a +Seg:5d1f Size:256 Owner:0xd66 ++++++ +Seg:5e1f Size:256 Owner:0xd68 ++++ -Seg:50f0 Size:256 Owner:0xd4c +Seg:5f1f Size:256 Owner:0xd6a ++++ -Seg:51f0 Size:256 Owner:0xd4e +Seg:601f Size:256 Owner:0xd6c ++++ -Seg:52f0 Size:256 Owner:0xd50 +Seg:611f Size:256 Owner:0xd6e ++++ -Seg:53f0 Size:256 Owner:0xd52 +Seg:621f Size:256 Owner:0xd70 ++++++ +Seg:631f Size:256 Owner:0xd72 ++++ -Seg:54f0 Size:256 Owner:0xd54 +Seg:641f Size:256 Owner:0xd74 ++++ -Seg:55f0 Size:256 Owner:0xd56 +Seg:651f Size:256 Owner:0xd76 ++++ -Seg:56f0 Size:256 Owner:0xd58 +Seg:661f Size:256 Owner:0xd78 ++++ -Seg:57f0 Size:256 Owner:0xd5a +Seg:671f Size:256 Owner:0xd7a ++++++ +Seg:681f Size:256 Owner:0xd7c ++++ -Seg:58f0 Size:256 Owner:0xd5c +Seg:691f Size:256 Owner:0xd7e ++++ -Seg:59f0 Size:256 Owner:0xd5e +Seg:6a1f Size:256 Owner:0xd80 ++++ -Seg:5af0 Size:256 Owner:0xd60 +Seg:6b1f Size:256 Owner:0xd82 ++++ -Seg:5bf0 Size:256 Owner:0xd62 +Seg:6c1f Size:256 Owner:0xd84 ++++++ +Seg:6d1f Size:256 Owner:0xd86 ++++ -Seg:5cf0 Size:256 Owner:0xd64 +Seg:6e1f Size:256 Owner:0xd88 ++++ -Seg:5df0 Size:256 Owner:0xd66 +Seg:6f1f Size:256 Owner:0xd8a ++++ -Seg:5ef0 Size:256 Owner:0xd68 +Seg:701f Size:256 Owner:0xd8c ++++ -Seg:5ff0 Size:256 Owner:0xd6a +Seg:711f Size:256 Owner:0xd8e ++++++ +Seg:721f Size:256 Owner:0xd90 ++++ -Seg:60f0 Size:256 Owner:0xd6c +Seg:731f Size:256 Owner:0xd92 ++++ -Seg:61f0 Size:256 Owner:0xd6e +Seg:741f Size:256 Owner:0xd94 ++++ -Seg:62f0 Size:256 Owner:0xd70 +Seg:751f Size:256 Owner:0xd96 ++++ -Seg:63f0 Size:256 Owner:0xd72 +Seg:761f Size:256 Owner:0xd98 ++++++ +Seg:771f Size:256 Owner:0xd9a ++++ -Seg:64f0 Size:256 Owner:0xd74 +Seg:781f Size:256 Owner:0xd9c ++++ -Seg:65f0 Size:256 Owner:0xd76 -++++ -Seg:66f0 Size:256 Owner:0xd78 -++++ -Seg:67f0 Size:256 Owner:0xd7a -++++ -Seg:68f0 Size:256 Owner:0xd7c -++++ -Seg:69f0 Size:256 Owner:0xd7e -++++ -Seg:6af0 Size:256 Owner:0xd80 -++++ -Seg:6bf0 Size:256 Owner:0xd82 -++++ -Seg:6cf0 Size:256 Owner:0xd84 -++++ -Seg:6df0 Size:256 Owner:0xd86 -++++ -Seg:6ef0 Size:256 Owner:0xd88 -++++ -Seg:6ff0 Size:256 Owner:0xd8a -++++ -Seg:70f0 Size:256 Owner:0xd8c -++++ -Seg:71f0 Size:256 Owner:0xd8e -++++ -Seg:72f0 Size:256 Owner:0xd90 -++++ -Seg:73f0 Size:256 Owner:0xd92 -++++ -Seg:74f0 Size:256 Owner:0xd94 -++++ -Seg:75f0 Size:256 Owner:0xd96 -++++ -Seg:76f0 Size:256 Owner:0xd98 -++++ -Seg:77f0 Size:256 Owner:0xd9a -++++ -Seg:78f0 Size:256 Owner:0xd9c -++++ -Seg:79f0 Size:273 Owner:0xfde +Seg:791f Size:273 Owner:0xfde ++++ Seg:9fde Size:32802 Owner:0x0  diff --git a/DEBUG.16W b/DEBUG.16W index e889f155..2cd41f09 100755 --- a/DEBUG.16W +++ b/DEBUG.16W @@ -1,210 +1,210 @@ -Seg:0 Size:10182 Owner:0x0 -++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++0 -Seg:27c6 Size:256 Owner:0x1938 +Seg:0 Size:9957 Owner:0x0 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++0 +Seg:26e5 Size:256 Owner:0x1938 ++++ -Seg:2928 Size:44 Owner:0x0 -++ -Seg:2954 Size:256 Owner:0x1726 +Seg:2855 Size:44 Owner:0x0 ++ +Seg:2881 Size:256 Owner:0x1726 ++++ -Seg:2a54 Size:256 Owner:0x1728 -++++ -Seg:2b54 Size:256 Owner:0x172a -++++ -Seg:2c54 Size:256 Owner:0x172c +Seg:2981 Size:256 Owner:0x1728 +++++ -Seg:2d54 Size:256 Owner:0x172e +Seg:2a81 Size:256 Owner:0x172a ++++ -Seg:2e54 Size:256 Owner:0x1730 +Seg:2b81 Size:256 Owner:0x172c ++++ -Seg:2f54 Size:256 Owner:0x1732 +Seg:2c81 Size:256 Owner:0x172e ++++ -Seg:3054 Size:256 Owner:0x1734 +Seg:2d81 Size:256 Owner:0x1730 ++++ -Seg:3154 Size:256 Owner:0x1736 +Seg:2e81 Size:256 Owner:0x1732 +++++ -Seg:3254 Size:256 Owner:0x1738 +Seg:2f81 Size:256 Owner:0x1734 ++++ -Seg:3354 Size:256 Owner:0x173a +Seg:3081 Size:256 Owner:0x1736 ++++ -Seg:3454 Size:256 Owner:0x173c +Seg:3181 Size:256 Owner:0x1738 ++++ -Seg:3554 Size:256 Owner:0x173e +Seg:3281 Size:256 Owner:0x173a ++++ -Seg:3654 Size:256 Owner:0x1740 +Seg:3381 Size:256 Owner:0x173c +++++ -Seg:3754 Size:256 Owner:0x1742 +Seg:3481 Size:256 Owner:0x173e ++++ -Seg:3854 Size:256 Owner:0x1744 +Seg:3581 Size:256 Owner:0x1740 ++++ -Seg:3954 Size:256 Owner:0x1746 +Seg:3681 Size:256 Owner:0x1742 ++++ -Seg:3a54 Size:256 Owner:0x1748 +Seg:3781 Size:256 Owner:0x1744 ++++ -Seg:3b54 Size:256 Owner:0x174a +Seg:3881 Size:256 Owner:0x1746 +++++ -Seg:3c54 Size:256 Owner:0x174c +Seg:3981 Size:256 Owner:0x1748 ++++ -Seg:3d54 Size:256 Owner:0x174e +Seg:3a81 Size:256 Owner:0x174a ++++ -Seg:3e54 Size:256 Owner:0x1750 +Seg:3b81 Size:256 Owner:0x174c ++++ -Seg:3f54 Size:256 Owner:0x1752 +Seg:3c81 Size:256 Owner:0x174e ++++ -Seg:4054 Size:256 Owner:0x1754 +Seg:3d81 Size:256 Owner:0x1750 +++++ -Seg:4154 Size:256 Owner:0x1756 +Seg:3e81 Size:256 Owner:0x1752 ++++ -Seg:4254 Size:256 Owner:0x1758 +Seg:3f81 Size:256 Owner:0x1754 ++++ -Seg:4354 Size:256 Owner:0x175a +Seg:4081 Size:256 Owner:0x1756 ++++ -Seg:4454 Size:256 Owner:0x175c +Seg:4181 Size:256 Owner:0x1758 ++++ -Seg:4554 Size:256 Owner:0x175e +Seg:4281 Size:256 Owner:0x175a +++++ -Seg:4654 Size:256 Owner:0x1760 +Seg:4381 Size:256 Owner:0x175c ++++ -Seg:4754 Size:256 Owner:0x1762 +Seg:4481 Size:256 Owner:0x175e ++++ -Seg:4854 Size:256 Owner:0x1764 +Seg:4581 Size:256 Owner:0x1760 ++++ -Seg:4954 Size:256 Owner:0x1766 +Seg:4681 Size:256 Owner:0x1762 ++++ -Seg:4a54 Size:256 Owner:0x1768 +Seg:4781 Size:256 Owner:0x1764 +++++ -Seg:4b54 Size:256 Owner:0x176a +Seg:4881 Size:256 Owner:0x1766 ++++ -Seg:4c54 Size:256 Owner:0x176c +Seg:4981 Size:256 Owner:0x1768 ++++ -Seg:4d54 Size:256 Owner:0x176e +Seg:4a81 Size:256 Owner:0x176a ++++ -Seg:4e54 Size:256 Owner:0x1770 +Seg:4b81 Size:256 Owner:0x176c ++++ -Seg:4f54 Size:256 Owner:0x1772 +Seg:4c81 Size:256 Owner:0x176e +++++ -Seg:5054 Size:256 Owner:0x1774 +Seg:4d81 Size:256 Owner:0x1770 ++++ -Seg:5154 Size:256 Owner:0x1776 +Seg:4e81 Size:256 Owner:0x1772 ++++ -Seg:5254 Size:256 Owner:0x1778 +Seg:4f81 Size:256 Owner:0x1774 ++++ -Seg:5354 Size:256 Owner:0x177a +Seg:5081 Size:256 Owner:0x1776 ++++ -Seg:5454 Size:256 Owner:0x177c +Seg:5181 Size:256 Owner:0x1778 +++++ -Seg:5554 Size:256 Owner:0x177e +Seg:5281 Size:256 Owner:0x177a ++++ -Seg:5654 Size:256 Owner:0x1780 +Seg:5381 Size:256 Owner:0x177c ++++ -Seg:5754 Size:256 Owner:0x1782 +Seg:5481 Size:256 Owner:0x177e ++++ -Seg:5854 Size:256 Owner:0x1784 +Seg:5581 Size:256 Owner:0x1780 ++++ -Seg:5954 Size:256 Owner:0x1786 +Seg:5681 Size:256 Owner:0x1782 +++++ -Seg:5a54 Size:256 Owner:0x1788 +Seg:5781 Size:256 Owner:0x1784 ++++ -Seg:5b54 Size:256 Owner:0x178a +Seg:5881 Size:256 Owner:0x1786 ++++ -Seg:5c54 Size:256 Owner:0x178c +Seg:5981 Size:256 Owner:0x1788 ++++ -Seg:5d54 Size:256 Owner:0x178e +Seg:5a81 Size:256 Owner:0x178a ++++ -Seg:5e54 Size:256 Owner:0x1790 +Seg:5b81 Size:256 Owner:0x178c +++++ -Seg:5f54 Size:256 Owner:0x1792 +Seg:5c81 Size:256 Owner:0x178e ++++ -Seg:6054 Size:256 Owner:0x1794 +Seg:5d81 Size:256 Owner:0x1790 ++++ -Seg:6154 Size:256 Owner:0x1796 +Seg:5e81 Size:256 Owner:0x1792 ++++ -Seg:6254 Size:256 Owner:0x1798 +Seg:5f81 Size:256 Owner:0x1794 ++++ -Seg:6354 Size:256 Owner:0x179a +Seg:6081 Size:256 Owner:0x1796 +++++ -Seg:6454 Size:256 Owner:0x179c +Seg:6181 Size:256 Owner:0x1798 ++++ -Seg:6554 Size:256 Owner:0x179e +Seg:6281 Size:256 Owner:0x179a ++++ -Seg:6654 Size:256 Owner:0x17a0 +Seg:6381 Size:256 Owner:0x179c ++++ -Seg:6754 Size:256 Owner:0x17a2 +Seg:6481 Size:256 Owner:0x179e ++++ -Seg:6854 Size:256 Owner:0x17a4 +Seg:6581 Size:256 Owner:0x17a0 +++++ -Seg:6954 Size:256 Owner:0x17a6 +Seg:6681 Size:256 Owner:0x17a2 ++++ -Seg:6a54 Size:256 Owner:0x17a8 +Seg:6781 Size:256 Owner:0x17a4 ++++ -Seg:6b54 Size:256 Owner:0x17aa +Seg:6881 Size:256 Owner:0x17a6 ++++ -Seg:6c54 Size:256 Owner:0x17ac +Seg:6981 Size:256 Owner:0x17a8 ++++ -Seg:6d54 Size:256 Owner:0x17ae +Seg:6a81 Size:256 Owner:0x17aa +++++ -Seg:6e54 Size:256 Owner:0x17b0 +Seg:6b81 Size:256 Owner:0x17ac ++++ -Seg:6f54 Size:256 Owner:0x17b2 +Seg:6c81 Size:256 Owner:0x17ae ++++ -Seg:7054 Size:256 Owner:0x17b4 +Seg:6d81 Size:256 Owner:0x17b0 ++++ -Seg:7154 Size:256 Owner:0x17b6 +Seg:6e81 Size:256 Owner:0x17b2 ++++ -Seg:7254 Size:256 Owner:0x17b8 +Seg:6f81 Size:256 Owner:0x17b4 +++++ -Seg:7354 Size:256 Owner:0x17ba +Seg:7081 Size:256 Owner:0x17b6 ++++ -Seg:7454 Size:256 Owner:0x17bc +Seg:7181 Size:256 Owner:0x17b8 ++++ -Seg:7554 Size:256 Owner:0x17be +Seg:7281 Size:256 Owner:0x17ba ++++ -Seg:7654 Size:256 Owner:0x17c0 +Seg:7381 Size:256 Owner:0x17bc ++++ -Seg:7754 Size:256 Owner:0x17c2 +Seg:7481 Size:256 Owner:0x17be +++++ -Seg:7854 Size:256 Owner:0x17c4 +Seg:7581 Size:256 Owner:0x17c0 ++++ -Seg:7954 Size:256 Owner:0x17c6 +Seg:7681 Size:256 Owner:0x17c2 ++++ -Seg:7a54 Size:256 Owner:0x17c8 +Seg:7781 Size:256 Owner:0x17c4 ++++ -Seg:7b54 Size:256 Owner:0x17ca +Seg:7881 Size:256 Owner:0x17c6 ++++ -Seg:7c54 Size:256 Owner:0x17cc +Seg:7981 Size:256 Owner:0x17c8 +++++ -Seg:7d54 Size:256 Owner:0x17ce +Seg:7a81 Size:256 Owner:0x17ca ++++ -Seg:7e54 Size:256 Owner:0x17d0 +Seg:7b81 Size:256 Owner:0x17cc ++++ -Seg:7f54 Size:256 Owner:0x17d2 +Seg:7c81 Size:256 Owner:0x17ce ++++ -Seg:8054 Size:256 Owner:0x17d4 +Seg:7d81 Size:256 Owner:0x17d0 ++++ -Seg:8154 Size:256 Owner:0x17d6 +Seg:7e81 Size:256 Owner:0x17d2 +++++ -Seg:8254 Size:256 Owner:0x17d8 +Seg:7f81 Size:256 Owner:0x17d4 ++++ -Seg:8354 Size:256 Owner:0x17da +Seg:8081 Size:256 Owner:0x17d6 ++++ -Seg:8454 Size:256 Owner:0x17dc +Seg:8181 Size:256 Owner:0x17d8 ++++ -Seg:8554 Size:256 Owner:0x17de +Seg:8281 Size:256 Owner:0x17da ++++ -Seg:8654 Size:256 Owner:0x17e0 +Seg:8381 Size:256 Owner:0x17dc +++++ -Seg:8754 Size:256 Owner:0x17e2 +Seg:8481 Size:256 Owner:0x17de ++++ -Seg:8854 Size:256 Owner:0x17e4 +Seg:8581 Size:256 Owner:0x17e0 ++++ -Seg:8954 Size:256 Owner:0x17e6 +Seg:8681 Size:256 Owner:0x17e2 ++++ -Seg:8a54 Size:256 Owner:0x17e8 +Seg:8781 Size:256 Owner:0x17e4 ++++ -Seg:8b54 Size:256 Owner:0x17ea +Seg:8881 Size:256 Owner:0x17e6 +++++ -Seg:8c54 Size:256 Owner:0x17ec +Seg:8981 Size:256 Owner:0x17e8 ++++ -Seg:8d54 Size:273 Owner:0xe4c0 -++++ -Seg:b954 Size:18091 Owner:0x0 -+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ \ No newline at end of file +Seg:8a81 Size:256 Owner:0x17ea +++++ +Seg:8b81 Size:256 Owner:0x17ec +++++ +Seg:8c81 Size:273 Owner:0xe4c0 ++++++ +Seg:b881 Size:18302 Owner:0x0 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ \ No newline at end of file diff --git a/HEAP.16W b/HEAP.16W index 29f7df77..7eedd5f2 100755 --- a/HEAP.16W +++ b/HEAP.16W @@ -1,47 +1,47 @@ == default == - USED block at 294a0016 of size 66 - USED block at 294a0058 of size 66 - FREE block at 294a009a of size 18 - USED block at 294a00ac of size 136 - USED block at 294a0134 of size 20 - FREE block at 294a0148 of size 7860 + USED block at 28770016 of size 66 + USED block at 28770058 of size 66 + FREE block at 2877009a of size 18 + USED block at 287700ac of size 136 + USED block at 28770134 of size 20 + FREE block at 28770148 of size 7860 OK - end of heap == near == - USED block at 1949e4f6 of size 12 - USED block at 1949e502 of size 530 - USED block at 1949e714 of size 72 - USED block at 1949e75c of size 20 - USED block at 1949e770 of size 20 - USED block at 1949e784 of size 20 - USED block at 1949e798 of size 20 - USED block at 1949e7ac of size 20 - USED block at 1949e7c0 of size 6204 + USED block at 1876e4f6 of size 12 + USED block at 1876e502 of size 332 + USED block at 1876e64e of size 52 + USED block at 1876e682 of size 20 + USED block at 1876e696 of size 20 + USED block at 1876e6aa of size 20 + USED block at 1876e6be of size 20 + USED block at 1876e6d2 of size 20 + USED block at 1876e6e6 of size 6422 OK - end of heap == far == - USED block at 294a0016 of size 66 - USED block at 294a0058 of size 66 - USED block at 294a009a of size 18 - USED block at 294a00ac of size 136 - USED block at 294a0134 of size 20 - USED block at 294a0148 of size 7860 + USED block at 28770016 of size 66 + USED block at 28770058 of size 66 + USED block at 2877009a of size 18 + USED block at 287700ac of size 136 + USED block at 28770134 of size 20 + USED block at 28770148 of size 7860 OK - end of heap Memory Type Total Used Free ---------------- -------- -------- -------- Default 8166 288 7878 -Near 6918 714 6204 +Near 6918 496 6422 Far 8166 288 7878 ---------------- -------- -------- -------- -coreleft = 6202 -farcoreleft = 30310 +coreleft = 6420 +farcoreleft = 30528 GetFreeSize = 24128 -GetNearFreeSize = 6204 +GetNearFreeSize = 6422 GetFarFreeSize = 24128 -memavl = 6202 +memavl = 6420 stackavail = 31588 diff --git a/MMDUMP.16B b/MMDUMP.16B index f11d1f40a8f679970bc5e2d9babe0d7daf45871c..3d22065dd1aca2fa9facb54707c91e7df86925ca 100755 GIT binary patch literal 2550 zcmZ|RDNaN|06;-B34$AZ31X7o7ZL=S?$#WK8HxQ@D)N@Z{fb$_44`fdc9vc z_4@P}e#21sP`E2>gdG%;LQ#-o%dzFya%?${97m2L$C2a6apX9195_~hV+A-?fMW$X zR)Av#I97mT1v#P|QI04_lq1R!<%n`bIg%VnjwDBtBgv8ENOB}OvK(2CEJv0j%aP^C za%4G*97T>IN0Fn*QRFCc6gjFKRgNl0m7~g0<*0I0Ihq_zjwVNwqsh_aXmT_;x*T1O zE=QN6%hBcNa&$R{97B#F$B<*lG2|F>3^}G8Q;sRelw-;<<(P2nRj-%ZKM!}-5AgQ< GH+SEQisj${ literal 2550 zcmZ|RDNaN|06;-B34$AZ31X7o7ZL=S?$#WK8HxQ@D)N@Z{fb$_44`fdc9w{ zjQsQ%e#21sP`E2>gdG%;LQ#-o%dzFya%?${97m2L$C2a6apX9195_~hV+A-?fMW$X zR)Av#I97mT1v#P|QI04_lq1R!<%n`bIg%VnjwDBtBgv8ENOB}OvK(2CEJv0j%aP^C za%4G*97T>IN0Fn*QRFCc6gjFKRgNl0m7~g0<*0I0Ihq_zjwVNwqsh_aXmT_;x*T1O zE=QN6%hBcNa&$R{97B#F$B<*lG2|F>3^}G8Q;sRelw-;<<(P2nRj-%ZKM!}-5AgQ< GH+SEK-{wXD diff --git a/makefile b/makefile index e58e6e58..3c88097d 100755 --- a/makefile +++ b/makefile @@ -166,6 +166,7 @@ TESTEXEC = & fonttest.exe & fontgfx.exe & scroll.exe & +#zcroll.c & vgmtest.exe & inputest.exe & palettel.exe & @@ -189,6 +190,8 @@ bakapi.exe: bakapi.$(OBJ) gfx.lib $(DOSLIBLIBS) # scroll.exe: scroll.$(OBJ) mapread.$(OBJ) jsmn.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) scroll.$(OBJ): $(SRC)/scroll.c +zcroll.exe: zcroll.$(OBJ) mapread.$(OBJ) jsmn.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) +zcroll.$(OBJ): $(SRC)/zcroll.c tesuto.exe: tesuto.$(OBJ) 16_head.$(OBJ) gfx.lib $(DOSLIBLIBS) tesuto.$(OBJ): $(SRC)/tesuto.c 0.exe: 0.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS) diff --git a/src/lib/jsmn b/src/lib/jsmn index 0f574ea3..1682c32e 160000 --- a/src/lib/jsmn +++ b/src/lib/jsmn @@ -1 +1 @@ -Subproject commit 0f574ea35becadb10f302795a5ffbc0b8bda8934 +Subproject commit 1682c32e9ae5990ddd0f0e907270a0f6dde5cbe9 diff --git a/src/zcroll.c b/src/zcroll.c index e69de29b..d3912145 100755 --- a/src/zcroll.c +++ b/src/zcroll.c @@ -0,0 +1,369 @@ +/* Project 16 Source Code~ + * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover + * + * This file is part of Project 16. + * + * Project 16 is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * Project 16 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see , or + * write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301 USA. + * + */ + +#include "src/lib/16_tail.h" +#include "src/lib/scroll16.h" +#include "src/lib/16_timer.h" +#include "src/lib/wcpu/wcpu.h" + +//#define FADE +#define MODEX //this is for mode x initiating + +//word far *clock= (word far*) 0x046C; /* 18.2hz clock */ +//bitmap_t *p; +global_game_variables_t gvar; +static map_t map; +player_t player[MaxPlayers]; +map_view_t mv[4]; +//word pn=0; //i forgot ww +float t; +sword bakapee; +pan_t pan; +//debugswitches +boolean panswitch=0; +//extern boolean pageflipflop=1; + unsigned int i; + const char *cpus; + //static int persist_aniframe = 0; /* gonna be increased to 1 before being used, so 0 is ok for default */ + + //map_view_db_t pgid[4]; + word pg; +//#ifdef FADE + static word paloffset=0; + byte *dpal; +//#endif + byte *gpal; + byte *ptr; + byte *mappalptr; + +void main(int argc, char *argv[]) +{ + byte *mesg=malloc(sizeof(dword)); + + if(argv[1]) bakapee = atoi(argv[1]); + else bakapee = 1; + + // 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; + } + + if (_DEBUG_INIT() == 0) { +#ifdef DEBUGSERIAL + printf("WARNING: Failed to initialize DEBUG output\n"); +#endif + } + _DEBUG("Serial debug output started\n"); // NTS: All serial output must end messages with newline, or DOSBox-X will not emit text to log + _DEBUGF("Serial debug output printf test %u %u %u\n",1U,2U,3U); + + pan.pn=1; + + start_timer(&gvar); + + /* create the map */ + fprintf(stderr, "testing map load~ "); + loadmap("data/test.map", &map); + chkmap(&map, 0); + printf("chkmap ok "); + fprintf(stderr, "yay map loaded~~\n"); + + /* draw the tiles */ +#ifdef MODEX + ptr = map.data; + //mappalptr = map.tiles->btdata->palette; + + /* data */ + player[0].data = malloc(48*128); //TODO use exmm + *player[0].data = bitmapLoadPcx("data/chikyuu.pcx"); // load sprite + + /* create the planar buffer */ +////++++ (player[0].data) = *planar_buf_from_bitmap(&p); + /*++++printf("load pee!! "); + pp = planar_buf_from_bitmap(&p); + printf("done!\n");*/ + +#endif + /* input! */ + IN_Startup(); + IN_Default(0,&player,ctrl_Joystick); + //IN_Default(1,&player,ctrl_Joystick); + + /* save the palette */ +#ifdef MODEX +#ifdef FADE + dpal = modexNewPal(); + modexPalSave(dpal); + modexFadeOff(4, dpal); +#endif + + textInit(); + VGAmodeX(bakapee, 1, &gvar); +// printf("%dx%d\n", gvar.video.page[0].sw, gvar.video.page[0].sh); +#ifdef FADE + modexPalBlack(); //reset the palette~ +#endif +#endif +// printf("Total used @ before palette initiation: %zu\n", oldfreemem-GetFreeSize()); +//++++ player[0].data.offset=(paloffset/3); +//++++ modexPalUpdate1(&player[0].data, &paloffset, 0, 0); + modexPalUpdate1(player[0].data->palette); +//++++0000 modexPalUpdate1(map.tiles->btdata->palette); + //printf(" %d\n", sizeof(ptmp->data)); + //printf("1: %d\n", paloffset); +//++++ map.tiles->data->offset=(paloffset/3); + //XTmodexPalUpdate(map.tiles->data, &paloffset, 0, 0); +// printf("\n====\n"); +// printf("0 paloffset= %d\n", paloffset/3); +// printf("====\n\n"); +#ifdef MODEX +#ifdef FADE + gpal = modexNewPal(); + modexPalSave(gpal); + modexSavePalFile("data/g.pal", gpal); + modexPalBlack(); //so player will not see loadings~ +#endif +#endif + + /* setup camera and screen~ */ + modexHiganbanaPageSetup(&gvar.video); + for(i=0;idata, mv[0].page->data, mv[0].page->pagesize); + + //TODO: put player in starting position of spot + //default player position on the viewable map + player[0].tx = mv[0].tx + mv[0].page->tilemidposscreenx; + player[0].ty = mv[0].ty + mv[0].page->tilemidposscreeny; + IN_initplayer(&player, 0); + //IN_initplayer(&player, 1); + +#ifndef SPRITE + modexClearRegion(mv[0].page, player[0].x, player[0].y-TILEWH, 16, 32, 15); + //modexClearRegion(mv[1].page, player[0].x, player[0].y-TILEWH, 16, 32, 15); +#else + //PBUFSFUN(mv[1].page, player[0].x, player[0].y-TILEWH, 16, 64, 24, 32, PLAYERBMPDATA); + PBUFSFUN(mv[0].page, player[0].x, player[0].y-TILEWH, 16, 64, 16, 32, player[0].data); +#endif + + if(!pageflipflop) modexShowPage(mv[1].page); + else modexShowPage(mv[0].page);//!(gvar.video.p) + shinku_fps_indicator_page = 0; // we're on page 1 now, shinku(). follow along please or it will not be visible. + + /* buffer pages */ +// modexClearRegion(mv[2].page, 0, 0, mv[2].page->width, mv[2].page->height, 47); +// modexClearRegion(mv[3].page, 0, 0, mv[3].page->width, mv[3].page->height, 45); +// { +// unsigned int k,j,o; +// /* fill screen with a distinctive pattern */ +// for (k=0;k < vga_state.vga_width;k++) { +// o = k >> 2; +// vga_write_sequencer(0x02/*map mask*/,1 << (k&3)); +// for (j=0;j < vga_state.vga_height;j++,o += vga_state.vga_stride) +// vga_state.vga_graphics_ram[o] = (k^j)&15; // VRL samples put all colors in first 15! +// } +// } + modexClearRegion(mv[3].page, 0, 128, 24, 36, 15); + +#ifdef MODEX +#ifdef FADE + modexFadeOn(4, gpal); +#endif +#endif + while(!IN_KeyDown(sc_Escape) && player[0].hp>0) + { + shinku(&gvar); + //top left corner & bottem right corner of map veiw be set as map edge trigger since maps are actually square + //to stop scrolling and have the player position data move to the edge of the screen with respect to the direction + //when player[0].tx or player[0].ty == 0 or player[0].tx == 20 or player[0].ty == 15 then stop because that is edge of map and you do not want to walk of the map + + //player movement + IN_ReadControl(0,&player); + if(!panswitch){ + walk(mv, player, 0); + }else{ + panpagemanual(mv, player, 0); + //printf(" player[0].q: %d", player[0].q); printf(" player[0].d: %d\n", player[0].d); + } + + //the scripting stuff.... + //if(((player[0].triggerx == TRIGGX && player[0].triggery == TRIGGY) && IN_KeyDown(0x1C))||(player[0].tx == 5 && player[0].ty == 5)) + if(((mv[0].map->data[(player[0].triggerx-1)+(map.width*(player[0].triggery-1))] == 0) && IN_KeyDown(0x1C))||(player[0].tx == 5 && player[0].ty == 5)) + { + short i; + for(i=800; i>=400; i--) + { + sound(i); + } + nosound(); + } + if(player[0].q == (TILEWH/(player[0].speed))+1 && player[0].info.dir != 2 && (player[0].triggerx == 5 && player[0].triggery == 5)){ player[0].hp--; } + //debugging binds! + if(IN_KeyDown(2)){ modexShowPage(mv[0].page); pan.pn=0; } + if(IN_KeyDown(3)){ modexShowPage(mv[1].page); pan.pn=1; } + if(IN_KeyDown(4)){ modexShowPage(mv[2].page); pan.pn=2; } + if(IN_KeyDown(4+1)){ modexShowPage(mv[3].page); pan.pn=3; } + if(IN_KeyDown(25)){ modexpdump(mv[0].page); modexpdump(mv[1].page); + IN_UserInput(1,1); + } //p +#ifdef MODEX +#ifdef FADE + if(IN_KeyDown(24)){ modexPalUpdate0(gpal); paloffset=0; modexpdump(mv[0].page); modexpdump(mv[1].page); IN_UserInput(1,1); } + if(IN_KeyDown(22)){ + paloffset=0; modexPalBlack(); modexPalUpdate(player[0].data, &paloffset, 0, 0); + printf("1paloffset = %d\n", paloffset/3); + modexPalUpdate(map.tiles->data, &paloffset, 0, 0); + printf("2paloffset = %d\n", paloffset/3); + modexpdump(mv[0].page); modexpdump(mv[1].page); + IN_UserInput(1,1); + } +#endif +#endif + //pan switch + if(IN_KeyDown(88)){panswitch=!panswitch; IN_UserInput(1,1);} //f12 + if(IN_KeyDown(87)) //f11 + { + pageflipflop=!pageflipflop; + IN_UserInput(1,1); +// VGAmodeX(0, 0, &gvar); +// IN_Shutdown(); +// __asm +// { +// mov ah,31h +// int 21h +// } + } + if(IN_KeyDown(68)) //f10 + { + gvar.kurokku.fpscap=!gvar.kurokku.fpscap; + IN_UserInput(1,1); + } + if(IN_KeyDown(67)) //f9 + { + modexClearRegion(mv[1].page, 0, 0, mv[1].page->width, mv[1].page->height, 2); + modexClearRegion(mv[2].page, 0, 0, mv[2].page->width, mv[2].page->height, 3); + modexClearRegion(mv[3].page, 0, 0, mv[3].page->width, mv[3].page->height, 4); + modexClearRegion(mv[3].page, 0, 0, 20, 36, 15); + //IN_UserInput(1,1); + } + if(IN_KeyDown(66)) //f8 + { +// modexDrawSprite(mv[0].page, 16, 16, p); + modexDrawSprite(mv[0].page, 32+48, 16, (player[0].data)); + } + //TODO fmemtest into page + /*if(IN_KeyDown(4+1)) //4 + { + pg=1; + SELECT_ALL_PLANES(); + _fmemset(((mv[pg].page->data+4)+(16*(mv[pg].page->width/4))), 15, 4); + }*/ + + //9 + if(IN_KeyDown(10)){ modexPalOverscan(rand()%56); modexPalUpdate1(dpal); IN_UserInput(1,1); } + //if(IN_KeyDown(11)){ modexPalOverscan(15); } + if((player[0].q==1) && !(player[0].x%TILEWH==0 && player[0].y%TILEWH==0)) break; //incase things go out of sync! + } + + /* fade back to text mode */ + /* but 1st lets save the game palette~ */ +#ifdef MODEX +#ifdef FADE + modexPalSave(gpal); + modexSavePalFile("data/g.pal", gpal); + modexFadeOff(4, gpal); +#endif + VGAmodeX(0, 1, &gvar); +#endif + IN_Shutdown(); + printf("\nProject 16 scroll.exe. This is just a test file!\n"); + printf("version %s\n", VERSION); + printf("tx: %d ", mv[0].tx); + printf("ty: %d\n", mv[0].ty); + printf("\n"); + printf("player vars:\n"); + printf(" x: %d", player[0].x); printf(" y: %d\n", player[0].y); + //if(player[0].hp==0) printf("%d wwww\n", player[0].y+8); + //else printf("\nplayer[0].y: %d\n", player[0].y); + printf(" tx: %d", player[0].tx); printf(" ty: %d\n", player[0].ty); + printf(" triggx: %d", player[0].triggerx); printf(" triggy: %d\n", player[0].triggery); + printf(" hp: %d", (player[0].hp)); printf(" q: %d", player[0].q); printf(" player.info.dir: %d", player[0].info.dir); printf(" player.d: %d ", player[0].d); + printf(" pdir=%d\n", player[0].pdir); + printf(" tile data value at player trigger position: %d\n\n", mv[0].map->data[(player[0].triggerx-1)+(map.width*(player[0].triggery-1))]); +// printf("palette offset: %d\n", paloffset/3); +//++++ printf("Total used: %zu\n", oldfreemem-GetFreeSize()); +//++++ printf("Total free: %zu\n", GetFreeSize()); +//not used now printf("temporary player sprite 0: http://www.pixiv.net/member_illust.php?mode=medium&illust_id=45556867\n"); +//not used now printf("temporary player sprite 1: http://www.pixiv.net/member_illust.php?mode=medium&illust_id=44606385\n"); + printf("Virtual Screen: %dx", gvar.video.page[0].width); printf("%d ", gvar.video.page[0].height); + printf("Screen: %dx", gvar.video.page[0].sw); printf("%d\n", gvar.video.page[0].sh); + printf("virtual tile resolution: %dx", gvar.video.page[0].tilesw); printf("%d ", gvar.video.page[0].tilesh); + printf("tile resolution: %dx", gvar.video.page[0].tw); printf("%d\n", gvar.video.page[0].th); + printf("middle tile position: %dx", gvar.video.page[0].tilemidposscreenx); printf("%d\n", gvar.video.page[0].tilemidposscreeny); + modexprintmeminfo(&gvar.video); + //printf("mv[%u].tx: %d", pan.pn, mv[pan.pn].tx); printf(" mv[%u].ty: %d ", pan.pn, mv[pan.pn].ty); + printf("gvar.video.p=%u ", gvar.video.p); printf("gvar.video.r=%u ", gvar.video.r); + printf("pageflipflop=%u\n", pageflipflop); + //0000printf("\ngvar.video.tickclk=%f\n", gvar.video.tickclk); + //0000printf("gvar.video.clk=%f", gvar.video.clk); + printf("\n"); + //printf("map.width=%d map.height=%d map.data[0]=%d\n", mv[0].map->width, mv[0].map->height, mv[0].map->data[0]); + + printf("\n"); + switch(detectcpu()) + { + case 0: cpus = "8086/8088 or 186/88"; break; + case 1: cpus = "286"; break; + case 2: cpus = "386 or newer"; break; + default: cpus = "internal error"; break; + } + printf("detected CPU type: %s\n", cpus); +#ifdef MODEX +#ifdef FADE + modexFadeOn(4, dpal); +#endif +#endif +} -- 2.39.5