Commit Graph

1004 Commits

Author SHA1 Message Date
Martin Haye
9e5e955fbe Realized I could use simple PLASMA extern for global heap pointer. 2017-01-22 08:44:10 -08:00
Martin Haye
421807719b Slightly more readable. 2017-01-18 09:59:00 -08:00
Martin Haye
a8126a1c75 New disk polling code. 2017-01-18 09:29:26 -08:00
Martin Haye
7056e09458 Properly retain previous game save when rebuilding image. 2017-01-18 08:24:09 -08:00
Martin Haye
a00e019b75 Got game-exist check working. 2017-01-18 08:21:01 -08:00
Martin Haye
4dd4ae02b1 Fixed load game. 2017-01-18 07:43:55 -08:00
Martin Haye
3ff5b34603 Moved speed test code and commented it out until needed again. 2017-01-18 07:27:15 -08:00
Martin Haye
453f2687ab Modified speed test for just 3D transition. 2017-01-18 06:56:10 -08:00
Martin Haye
eed337af74 Used up the last two bytes. 2017-01-17 10:34:35 -08:00
Martin Haye
5c0ba2dfa3 Saved a byte, and a little time. 2017-01-17 10:29:49 -08:00
Martin Haye
ead90f2bf3 Optimized litlen=1 common case. 2017-01-17 10:19:19 -08:00
Martin Haye
a4fede35f7 Made gamma refactor permanent. 2017-01-15 15:40:47 -08:00
Martin Haye
5a9f8f749b Refactored gamma. 2017-01-15 15:19:22 -08:00
Martin Haye
22e4b4b681 Saved a byte. 2017-01-15 11:54:21 -08:00
Martin Haye
f9e219d493 Optimized some source increments. 2017-01-15 11:52:08 -08:00
Martin Haye
d20c4ec778 Saved 5 more bytes. 2017-01-15 11:37:34 -08:00
Martin Haye
ed02a8bdc9 Size optimization - saved 2 bytes. 2017-01-15 11:33:39 -08:00
Martin Haye
52840945d7 Optimized end check. 2017-01-15 11:31:02 -08:00
Martin Haye
324fbd48b0 Optimized gamma in decomp, for 1.2% gain. 2017-01-15 10:47:32 -08:00
Martin Haye
d93d70b172 Sped up decomp 3.7% by unrolling part of match loop. 2017-01-15 10:22:09 -08:00
Martin Haye
7fb830793c Doing some speed testing. 2017-01-15 09:10:43 -08:00
Martin Haye
18c9e9528f Fixed BRK handler to retain value of A-reg. 2017-01-13 07:50:23 -08:00
Martin Haye
2f8de46d0e Moved more of expander into aux LC to take advantage of space freed up by ProRWTS. Now expander is loaded at startup and remains locked in memory, rather than swapping in and out. 2017-01-12 09:08:05 -08:00
Martin Haye
4b9f2c9a85 Create proper save file on all disks. Updated memory map. 2017-01-12 07:30:54 -08:00
Martin Haye
99f9f9f35c Now supporting multi-floppy mode. 2017-01-11 19:02:31 -08:00
Martin Haye
6e47f62e84 Now building multiple floppies. 2017-01-11 16:22:31 -08:00
Martin Haye
6b52149938 Fixed copy/paste errors in ProRWTS floppy driver. 2017-01-11 16:00:24 -08:00
Martin Haye
094d4ca8da Smaller 140k image, now with ProBoot. 2017-01-11 15:32:32 -08:00
Martin Haye
2404025654 Working on floppy generation. 2017-01-11 15:20:22 -08:00
Martin Haye
d0ca62eb53 Adding ProBoot and floppy version. 2017-01-11 09:54:58 -08:00
Martin Haye
3c6814e7af Refactored disk images to slim down main 800k image. 2017-01-11 07:36:59 -08:00
Martin Haye
545538c5d0 Initial version of ProBoot (untested as of yet). 2017-01-11 07:14:16 -08:00
Martin Haye
994388940a Integrated new version of ProRWTS, now with support for big tree files\! Works beautifully. 2017-01-09 07:47:51 -08:00
Martin Haye
6e8089d3a3 Made decompression slightly faster. 2017-01-09 06:57:39 -08:00
Martin Haye
8dc84239e4 Now working in 3D mode (had to avoid loading over aux text pg, since hard disk driver uses screen holes there.) 2017-01-07 16:43:27 -08:00
Martin Haye
ae4210a050 Temporary workarounds. 2017-01-07 11:25:01 -08:00
Martin Haye
845239c2cf Got decompression working, yay\! 2017-01-06 17:49:51 -08:00
Martin Haye
bf179182b0 Added underlap verification in a better way. Going back to 2 partitions so qkumba can repro the ProDOS tree-file problem. 2017-01-06 11:09:01 -08:00
Martin Haye
485e9e7430 Added decompression underlap verification. 2017-01-06 09:04:29 -08:00
Martin Haye
572beb65e7 Added memory map. 2017-01-05 16:01:25 -08:00
Martin Haye
3123bdd903 Moved ProRWTS to aux LC. Also getting further in boot seq now. 2017-01-05 14:27:44 -08:00
Martin Haye
410ba2238f Slightly better build wrapper scripts. 2017-01-05 08:54:19 -08:00
Martin Haye
efc8a84396 Yay, I can reach the title screen now. 2017-01-04 17:57:18 -08:00
Martin Haye
e21f6cb423 More progress on ProRWTS. 2017-01-04 15:05:43 -08:00
Martin Haye
dd061c37c3 Making slow progress integrating ProRWTS with mem mgr. 2017-01-04 13:15:39 -08:00
Martin Haye
8ff169d1e6 Now loading and successfully relocating ProRWTS and PLASMA. 2017-01-04 09:17:13 -08:00
Martin Haye
d9786058d8 Adding ProRWTS. 2017-01-02 14:08:33 -08:00
Martin Haye
2f35ee17f0 Stripped out Plasma VM 'cmd' loading, in anticipation of dedicated LegendOS loader. 2017-01-02 13:52:35 -08:00
Martin Haye
b62f4cbe53 Better commenting of decompressor. 2017-01-02 11:33:52 -08:00
Martin Haye
c67a4ea718 I think decompressor is written now. 2017-01-02 11:14:59 -08:00
Martin Haye
917a6561f7 Better encoding of offset=64 2017-01-02 09:06:11 -08:00
Martin Haye
0e4c7df743 More efficient coding of zero-length lits results in even better compression, and faster decomp as well. 2017-01-02 07:44:48 -08:00
Martin Haye
7d8c562ffa Rearranged gamma scheme for faster decomp. 2017-01-01 08:59:35 -08:00
Martin Haye
05a63b3e54 Optimized code pair encoding for faster decompression. 2016-12-30 18:06:17 -08:00
Martin Haye
cff4b79931 Refactored into code pairs. 2016-12-30 17:56:11 -08:00
Martin Haye
ac70c14f31 Refactored into code pairs. 2016-12-30 17:46:21 -08:00
Martin Haye
cd17eb873e Fixed comment 2016-12-30 17:42:35 -08:00
Martin Haye
e8ea2e9f87 Fixed comment. 2016-12-30 08:33:46 -08:00
Martin Haye
77e2a7c3cf Tested with underlap of 2 for decompression. Changed cut-off to 8 or more saved bytes. 2016-12-30 07:59:26 -08:00
Martin Haye
9d04090881 Backed off a little bit so that all elias encoding is 8-bits or less. 2016-12-29 17:42:10 -08:00
Martin Haye
908eb71927 Parameterized offset exp. 2016-12-29 17:19:15 -08:00
Martin Haye
a761056723 Parameterized offset exp. 2016-12-29 17:18:53 -08:00
Martin Haye
b5ca1d32aa Fixed a bug, and fixed a big counting error. 2016-12-29 16:06:16 -08:00
Martin Haye
64bc3117f0 More efficient encoding of literal lengths. 2016-12-29 12:48:11 -08:00
Martin Haye
014abce085 Committing to gammas for offsets. 2016-12-29 08:23:36 -08:00
Martin Haye
5804cde556 Best compression yet, messing with offset encoding. 2016-12-29 08:19:11 -08:00
Martin Haye
77b55bbd14 Offsets with gamma. 2016-12-29 08:06:23 -08:00
Martin Haye
1d421aacf2 More experimentation. 2016-12-28 08:00:28 -08:00
Martin Haye
ccdbbb970b Now checking zx7 by decompressing. 2016-12-27 21:01:48 -08:00
Martin Haye
bfa91285a6 Some progress on decompressing lx47 2016-12-27 08:44:00 -08:00
Martin Haye
52d2b877f5 Got compressor working, but unverified. 2016-12-26 10:21:53 -08:00
Martin Haye
5f53550df2 Support getCharResponse; better handling of interdependent global scripts; support for backslash-backtick for explicit spaces in strings. 2016-12-13 09:07:36 -08:00
Martin Haye
652673ea01 Now supports 0..3 args on global funcs. 2016-12-08 07:05:28 -08:00
Martin Haye
056fb3857e Removing old script no longer needed. 2016-12-08 06:05:02 -08:00
Martin Haye
9d849736e2 More fleshing out of global function calling. 2016-12-06 09:38:24 -08:00
Martin Haye
4d414bd6ce Now compiling each global script as a separate module, in anticipation of large scripts like hotel, store, etc. 2016-12-05 09:23:00 -08:00
Martin Haye
075778b3a2 Fixed bug with tilesets becoming too large. 2016-11-18 12:03:37 -08:00
Martin Haye
3d595608cc Fixed map numbering to handle multiple 2D maps. 2016-11-15 06:14:58 -08:00
Martin Haye
1f55dea477 Basics of benching/unbenching for players. 2016-11-10 08:40:50 -08:00
Martin Haye
a4421e9882 Ignore player rows unless they have at least some basic data. 2016-11-10 06:43:02 -08:00
Martin Haye
0313db8d1a Progress on intimate mode - text display now mostly working. 2016-11-08 08:39:18 -08:00
Martin Haye
e6bcc747bd Outlines of 'intimate mode' 2016-11-07 07:58:46 -08:00
Martin Haye
99606c623c Return to graphics mode when using an item (like TNT) per Seth's request. 2016-11-04 08:27:22 -07:00
Martin Haye
2aa9e342e7 Added tile swap for 3D mode. 2016-11-01 09:25:36 -07:00
Martin Haye
831c0cd822 Fixed memory corruption issue when party screen updated during combat. 2016-10-31 08:04:22 -07:00
Martin Haye
c6e46398c1 Prefix 'You have died' with a newline. 2016-10-26 08:13:06 -07:00
Martin Haye
72fe0986fd Fix for text display followed by animation in 3D mode. 2016-10-26 08:04:29 -07:00
Martin Haye
72cb83c415 Exit inventory once an item is used. 2016-10-26 07:50:13 -07:00
Martin Haye
e363b01c60 Don't reset global avatar flag when re-entering map. It needs to stay what the scripts set it to. 2016-10-26 07:45:47 -07:00
Martin Haye
65b5bf001e Fix for fwd/bkwd animations. 2016-10-26 07:38:07 -07:00
Martin Haye
048c09edf4 Fixed portraitNum bug (was relying on a specific Lawless Legends portrait) 2016-10-25 15:05:00 -07:00
Martin Haye
dcb8fd1eaa Clean up warning and error handling in packer, so mem reports aren't generated in those cases. 2016-10-25 09:16:01 -07:00
Martin Haye
9dc84046c5 Further reduce aux mem fragmentation by putting the 3D expander at the start of aux mem, leaving one continuous space in the middle. 2016-10-25 08:58:38 -07:00
Martin Haye
63d38e5498 Reduce aux mem fragmentation by putting gameloop at end of it. 2016-10-25 08:49:38 -07:00
Martin Haye
4df31bea67 Fix hashing for images so we properly detect changes to ordering. 2016-10-25 08:08:41 -07:00
Martin Haye
4b674d20b7 Added cache version to packer, so we can force rebuild when necessary. 2016-10-24 08:26:48 -07:00
Martin Haye
520fc7216e Now animating 3D textures. 2016-10-24 08:20:52 -07:00
Martin Haye
33d9f17503 New blocks for setting and clearing full-screen img. 2016-10-24 07:08:37 -07:00
Martin Haye
f3aaa7c6ad Now supports animating title screen and final win screen. 2016-10-23 10:42:11 -07:00
Martin Haye
ee16d7a0d6 Most animations working properly now. 2016-10-23 09:09:43 -07:00
Martin Haye
2ef692c537 Animation progress. 2016-10-22 08:46:37 -07:00
Martin Haye
466cd1923d Re-wrote much anim patching to actually be right(er). Rearranged mem to fit. 2016-10-21 08:18:58 -07:00
Martin Haye
b2d0af04a8 Wrote the rest of anim unpacking code. 2016-10-19 09:58:09 -07:00
Martin Haye
0b0a849855 A new patching strategy. 2016-10-19 07:37:55 -07:00
Martin Haye
a2a3246b68 Maybe a wrong turn for anim patches. 2016-10-18 07:13:42 -07:00
Martin Haye
6a049d3e33 Adding support for animating all image resources. 2016-10-17 09:26:47 -07:00
Martin Haye
dce735786e Generate fancy new report showing how much each resource contributes to memory and disk usage. 2016-10-16 10:06:30 -07:00
Martin Haye
73c08b56dd Little changes: use portrait names instead of numbers in generated code; a little cleanup of interrupts; improve comments. 2016-10-16 08:16:45 -07:00
Martin Haye
d085707158 Fix bug - target addr wasn't being cleared by set heap. 2016-10-13 09:27:43 -07:00
Martin Haye
a6f68275d6 Fix order of frame loading, and properly free temporary buffer. 2016-10-13 09:26:51 -07:00
Martin Haye
4dd39aff55 Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-10-11 09:04:03 -07:00
Martin Haye
0095407c7e Now blitting full screen images from aux mem rather than loading them directly to the hi-res buffer. Prelude to better support for full-screen. 2016-10-11 09:03:57 -07:00
badvision
6d61e2a75d Switching my source over to Windows 10 changed these file modes -- shouldn't really affect anyone. If it does we can revert this commit. 2016-10-08 13:35:27 -05:00
Martin Haye
49d025a44c Fleshed out ability to use an item on a map space. In addition, add item god-mode cheat moved to player info screen and made fancier. 2016-09-24 11:10:17 -07:00
Martin Haye
83a26c901b Made portrait test loop around. 2016-09-22 11:14:07 -07:00
Martin Haye
0fad632eee Better support for forcing combat, not backing up as far when fleeing / exiting a building. 2016-09-22 10:55:34 -07:00
Martin Haye
8dc394cf43 The whole fixupHint thing to avoid fragmentation was (a) not working anyway, and (b) causing crashes. Removed it. 2016-09-22 10:54:56 -07:00
Martin Haye
1d3b08204a Skip encounter check when backing up due to a script event or fleeing combat. 2016-09-22 08:13:17 -07:00
Martin Haye
1465bea426 Fixes for game load and save. 2016-09-22 08:04:24 -07:00
Martin Haye
9b6c00bebb Moved disk activity marker display logic to memory manager, so that it very accurately reflects real disk activity. 2016-09-22 07:51:07 -07:00
Martin Haye
cfadecc9f6 Optimized switching to and from render modes. 2016-09-22 07:32:54 -07:00
Martin Haye
ce7bf1d6cc Now processes 'leave' events on map scripts. 2016-09-20 06:15:49 -07:00
Martin Haye
a2c8008755 Initial infrastructure for event handling. 2016-09-15 11:08:43 -07:00
Martin Haye
c09142a164 Fixed so NPCs can attack now -- but only melee. 2016-09-08 09:34:02 -07:00
Martin Haye
51f73a8565 Finished cleanup of START_LOAD/FINISH_LOAD 2016-09-08 08:39:41 -07:00
Martin Haye
fe704379ce Good progress on reworking START_LOAD/FINISH_LOAD to figure out on their own what to do. 2016-09-08 08:30:08 -07:00
Martin Haye
65b414a954 Rearranged some things to make mem mgr more compact. 2016-08-31 08:34:00 -07:00
Martin Haye
c103afd893 Fixed out-of-mem bug adding Sasquatch to party. 2016-08-31 08:17:02 -07:00
Martin Haye
4238f62520 Fix sequence error when adding npc. 2016-08-31 07:23:11 -07:00
Martin Haye
c5a319d904 Fixed super-long error message. 2016-08-25 08:49:38 -07:00
Martin Haye
7ebe405c41 Fixed bugs with NPC creation, and made mem mgr debug slightly fancier. 2016-08-22 08:08:22 -07:00
Martin Haye
ecf76efde2 Mostly implemented ability to add/remove players, but got some debugging to do. 2016-08-17 08:09:14 -07:00
Martin Haye
243b6c362a Moved and extended garbage-collected heap, to make more room for game items (and take advantage of newly freed space in F800.FFFF range.) 2016-08-12 19:39:36 -07:00
Martin Haye
71895ed546 Fixed a bug with module reloading, and one involving the new F8xx refactor. 2016-08-12 19:18:31 -07:00
Martin Haye
f69b91ecca Removed a bit of useless code. 2016-08-08 08:13:03 -07:00
Martin Haye
779b61f7c0 Continued F8 refactoring. 2016-08-08 08:09:46 -07:00
Martin Haye
6c9515b63c Lots of progress toward freeing up up. 2016-08-08 07:47:01 -07:00
Martin Haye
297d0a4c4a Implementing bank-switching in debug macros, in prep for clearing .FFF9. 2016-08-05 09:28:29 -07:00
Martin Haye
3d06158a04 Added compatibility checking when loading a save game - based on hashing the global structure offset tables. 2016-08-05 09:27:11 -07:00
Martin Haye
8f2a5ada3d Packer now outputs a file with memory use of 3D maps, and warns for high usage. 2016-08-04 09:26:13 -07:00
Martin Haye
d21b269843 Eliminated special patching of PLASMA accessors, now that it's finally decided that PLASMA code doesn't need to use the aux LC bank (it's used by texture expander instead). 2016-08-04 08:30:39 -07:00
Martin Haye
50c78621e6 Fix problem that expander didn't get re-split when it was re-loaded. 2016-08-04 07:16:47 -07:00
Martin Haye
70ead12fb1 Added a god-mode command, '&', to print out the allocated memory blocks. 2016-08-03 08:41:36 -07:00
Martin Haye
2817f1b25e Forgot a raycaster file. 2016-08-03 08:40:42 -07:00
Martin Haye
40f27ef4eb Better memory management handling of split expander. 2016-08-03 08:05:54 -07:00
Martin Haye
7df3e2ced2 Raycaster with split-expander working now. 2016-08-03 07:54:14 -07:00
Martin Haye
0e6c20cffe Making some progress splitting the raycasting expander. 2016-08-01 09:45:09 -07:00
Martin Haye
8babf8c388 Add memory dump whenever out-of-mem occurs. 2016-07-30 11:31:21 -07:00
Martin Haye
b848882090 Fix avatar establishment on game start. 2016-07-28 09:46:38 -07:00
Martin Haye
e71bdea1fe Fixed avatar packing problem, and turned caching back on. 2016-07-26 07:40:01 -07:00
Martin Haye
747a17d6cb Fix for dice 3d6+n problem. Changed Mythos to LegendOS 2016-07-19 08:35:42 -05:00
Martin Haye
7e7c92dc8d Added hack for end-game screen; set sky color to 99 to trigger. 2016-07-19 08:21:34 -05:00
Martin Haye
c85334e22e Add messages back to combat death. 2016-07-18 16:55:49 -07:00
Martin Haye
d034b0530d Really reload game when player dies. Also, they can now be killed by a script. 2016-07-18 16:47:49 -07:00
David Schmenk
ae119a1240 Equipped items all get a '*' 2016-07-18 10:02:46 -07:00
David Schmenk
e9c79ab589 Fists do 1d4+hand2hand skill damage 2016-07-18 09:51:14 -07:00
Martin Haye
e376e9c505 A few fixes for compatibility with Lawless Legends scenario. 2016-07-17 19:16:32 -07:00
David Schmenk
4506c27bc4 Disable weapn change during combat and fix initialization needed when we do 2016-07-17 14:28:36 -07:00
David Schmenk
aab1a74698 Group Gold now just Gold 2016-07-17 12:17:00 -07:00
David Schmenk
1ba785cc0d Implement Change weapon during combat 2016-07-17 12:13:41 -07:00
David Schmenk
f4598db758 party health status sometimes shows up in wrong windows using displayf2 2016-07-17 06:56:07 -07:00
David Schmenk
da809614bb Show player health/max health and weapon damage in stats 2016-07-16 21:34:31 -07:00
David Schmenk
5e1e6a9173 Add item cheat and fix multiple inventory panes 2016-07-16 15:00:50 -07:00
David Schmenk
ff6a4ef59d Fix godmode cmds when switching maps 2016-07-16 10:46:41 -07:00
David Schmenk
0e4b8ca8f8 Add godmode setting. 2016-07-16 10:27:28 -07:00
Martin Haye
25901b9f01 Redisplay party summary if gold or health changes. 2016-07-16 05:39:22 -07:00
Martin Haye
7b103202d1 Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-07-16 05:09:24 -07:00
Martin Haye
43fa3101a3 Slow progress getting packer to run as a plugin. 2016-07-16 05:09:21 -07:00
David Schmenk
8433dab3b7 Clean up more strings during Drop 2016-07-15 15:19:54 -07:00
David Schmenk
ba71bb7fb3 Put some code to check list removal. Clean up local strings in inventory 2016-07-15 15:04:02 -07:00
David Schmenk
e43e042b2a Change player stats to show weapon in 2D and gold in 3D 2016-07-15 14:29:32 -07:00
Martin Haye
39d152720f Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-07-15 07:43:24 -07:00
Martin Haye
a980919cf5 Took out a couple debug stmts. 2016-07-15 07:43:21 -07:00
David Schmenk
1f328ce1d8 Speed up inventory display 2016-07-15 07:09:05 -07:00
David Schmenk
9f3e880c37 Filter selection based on command 2016-07-14 22:24:09 -07:00
David Schmenk
3ec8b61811 Unequip already equipped weapons 2016-07-14 18:42:33 -07:00
Martin Haye
95e4651123 Turned off caching in the packer as it's currently creating more problems than it solves. 2016-07-14 14:19:38 -07:00
Martin Haye
df02ca2367 Making avatar even more persistent, by placing it in the global state. 2016-07-14 14:01:54 -07:00
Martin Haye
66df00309a Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-07-14 13:52:27 -07:00
Martin Haye
d4525a9571 Fix clearEncounterZones and setAvatar to be (more) persistent. 2016-07-14 13:52:23 -07:00
Dave Schmenk
dfc5f974db Get size of map window to adjust number of items displayed 2016-07-13 20:23:01 -07:00
Martin Haye
a3ed0e93a2 More packer refactoring. 2016-07-13 08:05:07 -07:00
Dave Schmenk
ad8d58f62e Inventory formatting updates 2016-07-12 22:23:38 -07:00
Martin Haye
f38f76f1a8 Fixed dependency checking and empty script reporting. 2016-07-12 17:29:03 -07:00
Martin Haye
b5cf46d503 Made progress on alternate packaging of PackPartitions as a plugin for Outlaw. 2016-07-12 17:01:36 -07:00
Martin Haye
7c297f757d Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-07-12 16:10:57 -07:00
Martin Haye
85e01abd95 Fix heap type of 'item' and 'stuff' when they are created. 2016-07-12 16:10:54 -07:00
David Schmenk
c6edbeb703 Use health item 2016-07-12 15:51:05 -07:00
David Schmenk
abcc77d45f Add al skill modifiers 2016-07-12 09:56:54 -07:00
David Schmenk
c3052373dd Use strcmp for s_itemKind and clean up equip flag 2016-07-12 08:58:45 -07:00
David Schmenk
71b4900375 Inventory equip/use/drop 2016-07-12 08:09:55 -07:00
Martin Haye
d7e4c85e10 Fix for null scripts, and for avatar 0. 2016-07-11 08:03:29 -07:00
Martin Haye
504ad63907 Removed support for ESC in inputString - it was for Andrew Hogan's demo, not for Lawless Legends. 2016-07-10 17:37:55 -07:00
Martin Haye
4d5f073afa Adjusted window sizes to avoid overwriting borders. Fixed bug in playerHasItem that was a crasher. 2016-07-10 17:33:48 -07:00
Martin Haye
be40d8f4f4 Added ability to clear all encounter zones, and to set the avatar tile. 2016-07-10 17:18:03 -07:00
Martin Haye
31bf216f6e Fix bug with Korak combat: strings still a bit too long. 2016-07-08 17:50:45 -07:00
Martin Haye
fd0b547e7e Sprinkled in some SEI/CLI to help with future interrupt probs. Fixed yet another problem with the memory accessor patch to PLASMA. 2016-07-08 17:19:59 -07:00
Martin Haye
d773465455 Fix for real Apple hardware: enabling language card requires reads, not writes. 2016-07-07 19:01:56 -07:00
Martin Haye
0837f4a360 Fleshed out new blocks for get/increase/decrease stats. 2016-07-07 17:02:44 -07:00
Martin Haye
df446bc38b Added support for arbitrary game flags, and most of stat increase/decrease. 2016-07-07 16:15:31 -07:00
Martin Haye
2eff48233f Adding global stat names to save space. Adjusted indenting of asm code in gameloop so Sublime Text correctly figures out the default tab size. 2016-07-07 14:22:48 -07:00
Martin Haye
57c65f1c69 Added item-related Blocks. 2016-07-07 13:59:07 -07:00
Martin Haye
333603c064 Added memory clearing and disabling of IIc keyboard buffer, to aid in getting more consistent results on real hardware. 2016-07-06 07:46:17 -07:00
David Schmenk
e9012275d5 Prepare for scripted event handling 2016-07-04 12:59:24 -07:00
David Schmenk
4a0ab503a2 Slight rearrangement of main player stats 2016-07-04 10:56:55 -07:00
David Schmenk
44d51ebf82 Show Group Gold in inventory, cheat health +10 2016-07-04 10:10:19 -07:00
David Schmenk
0df15626d0 Merge gold
Merge branch 'master' of https://github.com/badvision/lawless-legends
2016-07-04 09:33:43 -07:00
David Schmenk
287ecc6702 Add gold to global state and collect loot after combat. 2016-07-04 09:31:33 -07:00
Martin Haye
f2fe6a1989 Fixed bug with hitting 'M' on New/Load screen. 2016-07-04 09:00:37 -07:00
Martin Haye
f88b9bf298 Fix bug where hitting enter on New/Load screen hid the text. 2016-07-04 08:55:29 -07:00
Martin Haye
bd44d405d4 Need to set partition when reloading 3D textures. 2016-07-04 08:46:11 -07:00
Martin Haye
bf666a0f07 Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-07-03 18:20:11 -07:00
Martin Haye
ac680b47d2 Always beep when blocked, whether blocked by an obstacle or the edge of the map. 2016-07-03 18:20:07 -07:00
David Schmenk
9dd02c2236 Just had to fix the PLASMA bug 2016-07-03 15:57:34 -07:00
Martin Haye
cb124995f4 Established some basics of the new A2Pack plugin. 2016-07-03 15:31:13 -07:00
Martin Haye
f15dc1a648 Forgot to check in globalDefs.plh 2016-07-03 15:29:14 -07:00
Martin Haye
0fe5ef28ca Refactored to get rid of lib vectors, thanks to Dave. 2016-07-03 13:39:00 -07:00
Martin Haye
0708cbda95 Took out some debug prints 2016-07-03 12:26:22 -07:00
Martin Haye
29f6df5913 Making good progress on external symbol resolving. 2016-07-03 12:01:35 -07:00
Martin Haye
ea5800155f Got basics of new fixup mechanism working. 2016-07-03 07:33:12 -07:00
Martin Haye
bb0a9339fe Can now define a Help global function in Outlaw, and it'll get called when '?' is hit in the gme. 2016-07-01 17:19:12 -07:00
Martin Haye
30a9f15ae2 Added generation for generic items like amulets. 2016-07-01 16:57:24 -07:00
Martin Haye
d89d9dfbad Fixed so some enemies get a crack at you when you're fleeing. 2016-07-01 16:32:57 -07:00
Martin Haye
dab8bd2908 Now fully supports multi-disk mode. 2016-07-01 15:58:05 -07:00
Martin Haye
437471451b Now handles scripted combat on 2D maps as well, and handles fleeing correctly. 2016-06-30 09:31:29 -07:00
Martin Haye
02bbbf5ac7 Clean up what happens at the end of a combat script. 2016-06-30 08:47:30 -07:00
Martin Haye
f1fbd7bd8c Working on getting script to resume after combat. 2016-06-30 08:36:46 -07:00
Martin Haye
cf0c3d3ac1 Fix memory and screen glitches when switching between scripted portrait moments, combat, and 3D display. 2016-06-29 07:42:58 -07:00
Martin Haye
8ebbc16da8 Fixed streqi logic for matching encounter zone codes. Added a Blockly for starting an encounter. 2016-06-28 07:40:09 -07:00
Martin Haye
30f3e92d37 Tiny script to extract text from the XML files, for spell and grammar checking. 2016-06-28 06:59:28 -07:00
Martin Haye
de0135b3c6 Fix to not ask about loading unless an initial save game is present. Avoid double-locking the heap area. 2016-06-24 08:46:40 -07:00
Martin Haye
cfc84188c6 Fixed bug with game load. 2016-06-24 07:16:08 -07:00
Martin Haye
0e94a6fbb0 Load working better. 2016-06-24 06:12:45 -07:00
Martin Haye
45ab9bafe2 Implementing new game / load game screen. 2016-06-24 05:58:30 -07:00
Martin Haye
17793d011f Preserve previous saved game if 2mg is present. 2016-06-21 08:17:18 -07:00
Martin Haye
b05e138400 Switched base 2mg image to be 800k, to save bandwidth when we send disks around to each other. 2016-06-21 07:42:36 -07:00
Martin Haye
6c49bb2025 Fix crash when traveling on 2D map. 2016-06-21 07:20:55 -07:00
Martin Haye
5f945863c8 Fix bug with game load. 2016-06-20 09:10:41 -07:00
Martin Haye
ec26b8276a Basics of load/save working. 2016-06-20 08:49:01 -07:00
Martin Haye
87ab8b6031 Allow control chars in command table; basic framework for game load/save established. 2016-06-19 08:38:40 -07:00
Martin Haye
dcea57cc7c It was silly to have strcmpi when all we needed was streqi. 2016-06-19 08:15:51 -07:00
Martin Haye
caa05f16f6 Refactored to save space in the main gameloop module. 2016-06-19 08:04:43 -07:00
Martin Haye
c352a867a2 Refactored code to save space when running standalone modules like combat and player-info. 2016-06-19 07:42:11 -07:00
Martin Haye
db95a87e69 Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-06-18 16:31:53 -07:00
Martin Haye
6c33299a77 Split game assets into two partitions, to pave the way for multi-floppy distribution. 2016-06-18 16:31:21 -07:00
David Schmenk
afd05c4bec Prepare for inventory command processing 2016-06-18 12:59:38 -07:00
David Schmenk
e1c2c9c4d5 Fix skills display to not scroll on last line 2016-06-18 12:00:46 -07:00
Martin Haye
b8b2541715 Generalized ammo to just 'stuff' so we can have other countable things. 2016-06-17 07:39:52 -07:00
Martin Haye
d5f1663267 Added ammo generation. 2016-06-17 07:26:53 -07:00
Martin Haye
fd989c0d32 Got rid of old hard-coded globalScripts.pla 2016-06-16 17:48:58 -07:00
Martin Haye
3862931a55 Minor updates to party display for new player attributes scheme. 2016-06-16 17:44:54 -07:00
Martin Haye
3427d01768 Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-06-16 17:42:24 -07:00
Martin Haye
7e758be30e Added player generation. 2016-06-16 17:42:18 -07:00
Martin Haye
4e57da0d53 Now translating armor spreadsheet to code. 2016-06-16 07:27:13 -07:00
Martin Haye
c9300a20c9 Fix crash bug in old global scripts. 2016-06-16 07:13:39 -07:00
David Schmenk
a351b9c772 Add real values to Inventory/Stats 2016-06-15 12:15:10 -07:00
Martin Haye
646d48d206 Now packing weapons spreadsheet. 2016-06-13 08:15:14 -07:00
Martin Haye
4366daef8f Wasn't recording goldLoot for in enemies before. 2016-06-12 13:38:14 -07:00
Martin Haye
944935c4a2 Lots of refactoring of armor, weapons, character stats, etc. 2016-06-12 13:12:14 -07:00
Martin Haye
1122108e75 Refactoring to auto-generate weapon table from spreadsheet in XML file. 2016-06-12 08:52:24 -07:00
Martin Haye
de33ab3b21 Generating stubs for all item types (weapons, armor, ammo, and items). 2016-06-11 10:58:33 -07:00
Martin Haye
a4eaeb5cf1 Fix map name display when returning from combat. 2016-06-09 07:39:09 -07:00
Martin Haye
92e5016cb9 Now parsing enemies from within the <sheets> element of world.xml 2016-06-08 09:56:10 -07:00
David Schmenk
4810c72423 ProceI can update ame source 2016-06-05 18:01:11 -07:00
Brendan Robert
9b5508a88c Ignore build messages from commit history 2016-06-05 13:11:22 -05:00
Martin Haye
c4b973fabf Changed disk activity indicator to blue per Seth's preference. 2016-06-03 09:42:28 -07:00
Martin Haye
64fa3c0ebb Made disk activity icon. 2016-06-03 09:18:25 -07:00
Martin Haye
170c98508f Moved player info display to separate module, party.pla. Added a few descriptive comments to help Dave get started. 2016-06-01 09:03:14 -07:00
Martin Haye
026f03ff76 Fixed instructions for placing scenario files correctly. 2016-05-31 08:32:41 -07:00
Martin Haye
f82b080ae7 Fixed byte coercion problems uncovered by new Groovy version. 2016-05-31 08:28:02 -07:00
Martin Haye
8fa40a7040 Fix PackPartitions build to always use local groovy jar. 2016-05-31 08:03:26 -07:00
Martin Haye
3df106d6eb Unified build system, with new readme. 2016-05-31 07:45:49 -07:00
Martin Haye
6316395d16 Took out high-bit hacking, as Seth now has full control over these in Outlaw. 2016-05-31 07:17:38 -07:00
Martin Haye
0ea7e8194c Adding groovy jar to repo to ease build nightmares. 2016-05-31 07:03:54 -07:00
Martin Haye
686bc8b614 Check in PLVM02.SYSTEM.sys, so that one can build PackPartitions without needing ACME. 2016-05-30 08:28:10 -07:00
Martin Haye
672c00fdbd Changes to build cleanly in a fresh Debian box. 2016-05-30 08:27:06 -07:00
Martin Haye
f1aab8572c Fix problems with cursor flash when inputting a string. 2016-05-26 09:09:25 -07:00
Martin Haye
a1dad110dd Fix for 64-map chunk bug. 2016-05-26 07:41:44 -07:00
Martin Haye
334c7e6d71 Fix for missing hi-bits in text windows making characters look like they were cut off. 2016-05-19 09:31:28 +02:00
Martin Haye
cd4bd80639 Break up long strings automatically. 2016-05-19 09:31:05 +02:00
Martin Haye
6ed1518520 String management: break up long strings into plasma-size chunks; clear string pool after each. 2016-05-10 07:13:22 +02:00
Martin Haye
1bd54841e6 Now writes warnings to a file so Seth can see them easily. 2016-04-28 09:26:11 -07:00
Martin Haye
0f2f2fa4ab Animations now run during combat pauses. 2016-04-28 08:20:28 -07:00
Martin Haye
8ab5e66078 Merge branch 'peterferrie-master' 2016-04-28 07:45:10 -07:00
Martin Haye
17772096f5 Merge branch 'master' of https://github.com/peterferrie/lawless-legends into peterferrie-master 2016-04-28 07:44:38 -07:00
Martin Haye
d0100f94e6 Barf when strings get too long. 2016-04-28 07:30:59 -07:00
Peter Ferrie
2822e6c184 fix more typos 2016-04-26 09:46:25 -07:00
Martin Haye
6745f5c556 Merge branch 'master' of https://github.com/peterferrie/lawless-legends into peterferrie-master 2016-04-26 06:40:11 -07:00
Martin Haye
9cdc68b0ee Improved messaging for errors. 2016-04-26 06:39:44 -07:00
Peter Ferrie
e5cd2ce964 fix typo 2016-04-19 14:22:41 -07:00
Peter Ferrie
d8e235d753 minor size optimisations
note that fontengine.s!Wp_CFnt has a bad compare
2016-04-12 16:54:00 -07:00
Martin Haye
1a36b10698 Handle de-quoting the enemies.tsv file. 2016-04-07 10:11:35 -07:00
Martin Haye
312ee3a8a3 Fixed problem clearing portrait after teleport. 2016-04-07 07:35:28 -07:00
Martin Haye
ccc43368d4 Encounter zones working now. 2016-03-31 10:01:04 -07:00
Martin Haye
453d44b11a Speed things up a little. 2016-03-29 15:22:31 -07:00
Martin Haye
d17ef502e3 Good progress on implementing encounter zones. 2016-03-29 15:17:42 -07:00
Martin Haye
510385ccd3 Better error reporting. 2016-03-27 08:18:32 -07:00
Martin Haye
3a1ad7a0c0 Streamlined packing procedure for Windows use. 2016-03-25 09:39:15 -07:00
Martin Haye
44ef8798e7 Now packing global scripts from the Outlaw file. In particular, now requires a 'New game' script to be present, that it used to set map coordinates now (and much more later). 2016-03-24 09:45:07 -07:00
Martin Haye
99f5879993 String response gathering and checking now working. 2016-03-22 08:22:26 -07:00
Martin Haye
4bf6d8204a Look for enemies.tsv and font.bin in current directory if not found in the standard place. This will allow Seth to be fully independent of us developers and our exacting directory structure. 2016-02-27 11:02:58 -08:00
Martin Haye
c845bf6587 A few changes to support unibuild on Windows. 2016-02-16 09:33:16 -08:00
Martin Haye
7d6393d9c8 PackPartitions now grabs code files as resources from the Jar file if they're not present locally. 2016-02-15 16:25:24 -08:00
Martin Haye
e05a9691f9 Further work on just-in-time copy to build dir. 2016-02-15 14:43:25 -08:00
Martin Haye
ed21cb6d23 Now doing a better job of packing if/else statements and variables. 2016-02-15 13:58:30 -08:00
Martin Haye
5aeabcde51 Use user-defined script names in generated PLASMA code. 2016-02-10 04:58:14 -08:00
Martin Haye
291d529d5a Added incremental build of map scripts. 2016-02-09 08:39:52 -08:00
Martin Haye
e12555531a Pure-PLASMA scripts from Outlaw now working. 2016-02-09 08:23:25 -08:00
Martin Haye
042450d4ce Map scripts now being built as PLASMA source which is then compiled, instead of direct-to-bytecode. This will be much easier to maintain once it's fully working. 2016-02-03 08:50:22 -08:00
Martin Haye
c0e98cd6c4 Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-02-01 08:07:19 -08:00
Martin Haye
8439e6840d PackPartitions now builds a 'fat' jar file containing all classes and dependent libraries. 2016-02-01 08:07:12 -08:00
dschmenk
d975768c62 Merge branch 'master' of http://github.com/badvision/lawless-legends 2016-01-29 13:46:03 -08:00
dschmenk
4efbe1bc23 Fix IDXW bug 2016-01-29 13:45:08 -08:00
Martin Haye
10db0b073a Added hex character constants within strings. 2016-01-29 08:27:00 -08:00
Martin Haye
4f6ca7ed34 Added cache to speed up packing. 2016-01-24 17:00:40 -08:00
Martin Haye
2851e6ca24 Cleaned up texture divvy code. 2016-01-24 13:11:35 -08:00
Martin Haye
c445c9808f Integrated disk image generation into PackPartitions. 2016-01-24 12:37:11 -08:00
Martin Haye
f239bd4ac2 PackPartitions now does everything itself: compile, assemble, pack. 2016-01-18 19:55:36 -08:00
Martin Haye
d1558d67cf PackPartitions now calls ACME to assemble sources. 2016-01-18 19:28:59 -08:00
Martin Haye
4caf8033b7 More progress building PLASMA code. 2016-01-18 18:23:02 -08:00
Martin Haye
26bc00f3af First steps getting PLASMA compiler to run inside PackPartitiions. 2016-01-18 17:59:54 -08:00
Martin Haye
4a410c8a07 Fixed circular dependencies at build time. 2016-01-18 17:00:31 -08:00
Martin Haye
79c30b84fc Added PLASMA makefile rule to build plasm.jar 2016-01-18 13:11:43 -08:00
Martin Haye
db1e6c3a6c Took non-working null func out of test. 2016-01-07 11:32:15 -08:00
Martin Haye
b1eb16df92 Merge branch 'master' of https://github.com/badvision/lawless-legends 2016-01-07 11:29:33 -08:00
Martin Haye
9883d292fc Start with first portrait for test mode. 2016-01-07 11:29:31 -08:00
Martin Haye
a93db4ea66 Took out some useless main/aux switching in decomp routine. 2016-01-07 11:28:03 -08:00
Martin Haye
59106ae953 Fixed nasty decompression bug having to do with match len multiple of 256. 2016-01-07 11:23:46 -08:00
dschmenk
328b0b5a1c Add increment/decrement statements and increase ID lenght to 32 2016-01-06 12:30:49 -08:00
Martin Haye
ecc9cc2016 Fixed portrait confusion, and moved enemy selection code to combat module. 2016-01-01 10:18:33 -08:00
Martin Haye
7e9bcabcc1 Now generating enemies from table instead of hand coding them. 2016-01-01 07:53:57 -08:00
Martin Haye
8c6c658ecf Making translating enemy table to code. 2016-01-01 06:04:42 -08:00
Martin Haye
55cd9892e3 More efficient way to call global scripts. 2015-12-31 09:56:50 -08:00
Martin Haye
9a1a1d0a0e Refactored global scripts into their own module. 2015-12-29 11:22:14 -08:00
Martin Haye
c4e46238cd Centralized all shared function vectors for efficiency; made mem debug printout fit on screen; use better notation for pointer-to-pointer; fixed bug causing combat to fail on 3D map. 2015-12-29 08:59:13 -08:00
Martin Haye
12a1427af6 Removed some gamelib functions that are better being only in the main module. 2015-12-28 10:52:57 -08:00
Martin Haye
c4e88d3873 Added texture control, so we can swap out textures in 3D mode to make room for a portrait. 2015-12-28 10:20:28 -08:00
Martin Haye
d5d30639d6 Save map state to global vars. 2015-12-28 09:13:18 -08:00
Martin Haye
5fc03b6f55 Better debug for out-of-memory. 2015-12-23 15:59:11 -08:00
Martin Haye
df901ee94f Fixed some bugs introduced by refactoring, and also the portrait preview facility. 2015-12-23 15:42:37 -08:00
Martin Haye
604857a4d2 Animations working in-engine for the first time. 2015-12-17 09:19:49 -08:00
Martin Haye
a1b60a490c Comment fix for min/max, thanks Dave. 2015-12-17 06:48:30 -08:00
Martin Haye
f46aed43a6 Pick up animation flags properly. 2015-12-17 06:48:15 -08:00
Martin Haye
11464433be Now packing animation sequences. 2015-12-12 07:22:15 -08:00
Martin Haye
70174a3342 Forgot to check in some files from the combat refactor. 2015-12-11 06:48:00 -08:00
Martin Haye
54bdfdd47e Finished moving combat code to a module. 2015-12-10 09:43:21 -08:00
Martin Haye
a48e3cc9d8 Making some progress splitting the combat code into a separate module. 2015-12-09 10:16:05 -08:00
Martin Haye
be7ba4a3ed Added partial support for NPC party members; packer now produces headers for the PLASMA code so we don't have to hard-code image numbers. 2015-12-09 07:35:02 -08:00
Martin Haye
90187c007c Starting to work on translating enemy table to code. 2015-12-06 15:44:28 -08:00
Martin Haye
059f77aba1 Starting in on data generation. 2015-12-06 12:02:18 -08:00