Commit Graph

543 Commits

Author SHA1 Message Date
Brendan Robert
1aa20e3f5b Adding a fork of Jace for building standlone versions of the game 2017-12-28 10:40:35 -06:00
Martin Haye
4d7e33c061 Upgraded PLASMA from Dave. 2017-12-26 13:11:46 -08:00
David Schmenk
ed1e7ef9d7 enable strict parameter/return count checking 2017-12-13 14:56:15 -08:00
David Schmenk
f27a1b89c7 Reset Y instruction pointer after call 2017-12-05 13:50:07 -08:00
Dave Schmenk
fe3a592e25 Reduce stack usage during CALL/RET 2017-12-04 21:42:52 -08:00
Martin Haye
f6069c576d Integrated new PLASMA compiler, including delicious ternary operator. 2017-11-29 09:21:24 -08:00
David Schmenk
dc790dc566 Update compiler with ternary op support 2017-11-25 12:53:00 -08:00
Dave Schmenk
e90a95f944 Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-11-11 06:52:19 -08:00
Dave Schmenk
cf436209ee Don't mess with interrupts in VM (work needed for unenhanced //e) 2017-11-11 06:51:30 -08:00
Martin Haye
5e91ea175b Fix to get proper parent dir from relative file. 2017-11-10 12:08:43 -08:00
Martin Haye
0086c6645e Some resources needed duping across disks; we were just lucky with LL. 2017-11-09 10:00:20 -08:00
Martin Haye
f3e53f1f4a Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-11-09 07:41:46 -08:00
Martin Haye
77b222dfa6 Version number fix. Added ability to put font.bin alongside world.xml. 2017-11-09 07:41:41 -08:00
Dave Schmenk
f676ae7d31 Add optional arguments to adjust timescale and extra percussion channels 2017-11-08 09:57:15 -08:00
Dave Schmenk
bf5fd4fafa Better delta time tracking of MIDI events 2017-11-07 16:24:09 -08:00
Dave Schmenk
2eb98cc548 Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-11-05 17:39:17 -08:00
Dave Schmenk
9449cd62ff Push minimum delta time to 1/16 second to capture more transitions 2017-11-05 17:37:36 -08:00
David Schmenk
16b71cd640
Install instructions 2017-11-04 09:38:17 -07:00
David Schmenk
d972f1db3e Test MIDI file 2017-11-04 08:26:29 -07:00
David Schmenk
5bce9291d1
Update README.md 2017-11-01 16:08:38 -07:00
David Schmenk
39b93e88bb
Create README.md
Instructions to convert MIDI .mid files into a sequence file for the PLASMA music sequencer
2017-11-01 16:07:41 -07:00
Dave Schmenk
f69ee68138 Initial commit of MIDI converter. 2017-11-01 12:37:55 -07:00
Martin Haye
b25224558c No longer need tossStrings() workaround. 2017-09-19 08:49:00 -07:00
Martin Haye
52f42d7fcf Can now avoid fixups for gamelib functions, and (with care) use abs addressing there. 2017-09-19 08:32:25 -07:00
Martin Haye
ef251e479a More progress on pack limits. 2017-09-14 09:53:01 -07:00
Martin Haye
a34c54fdcd Working on pack limits, and some fixes to inv screen. 2017-09-14 08:09:21 -07:00
Martin Haye
4354ef5916 Merge master into newplasma branch. 2017-09-13 08:14:34 -07:00
Martin Haye
05d96b1243 Expanded small-object heap to make more space for inventory. Started implementing pack size limits. 2017-09-12 08:21:23 -07:00
Martin Haye
ea25619c78 Added code to display % heap memory in use. 2017-09-11 11:16:10 -07:00
Martin Haye
082bd4bf22 Merge branch 'master' into newplasma 2017-09-04 17:25:14 -07:00
Martin Haye
b723a25bef Fixed memory management problems in combat (preloaded funcs, item generation). Fixed problems with join/split. Normalized keyboard commands on inv screen. Fixed using TNT if Paul has it instead of plyr. 2017-09-03 09:28:46 -07:00
Martin Haye
5286d766df Merge branch 'master' into newplasma 2017-09-03 07:00:38 -07:00
Martin Haye
805a1e426a Added god-mode cheat to edit game flags. 2017-09-02 11:09:49 -07:00
Martin Haye
dbc94d707c Coding done on big item and flag refactor. Now for testing. 2017-08-29 09:06:53 -07:00
Martin Haye
ffa1bb9afe Removed old kludged finalWin() logic. Moved a couple of functions to godmode.pla that were only used there anyway. 2017-08-15 10:01:28 -07:00
Martin Haye
9c45ed0fb5 Added import-game function. 2017-08-14 08:01:31 -07:00
Martin Haye
8cd36fad17 Added version stamp (encoded engine time, plus scenario differential) 2017-08-11 11:17:38 -07:00
Martin Haye
4589d6ec66 Added support for logic_negate 2017-08-10 09:56:33 -07:00
Martin Haye
8c46ccc34d Messing around with lambda functions. 2017-08-10 07:31:31 -07:00
Martin Haye
0f8dbaba4a Merge branch 'newplasma' of https://github.com/badvision/lawless-legends into newplasma 2017-08-10 07:30:02 -07:00
David Schmenk
ebe9c8ea14 New portable VM and fix parse typo 2017-08-09 13:19:57 -07:00
David Schmenk
2ec914aec5 Update test case 2017-08-09 13:15:46 -07:00
Martin Haye
86f125c210 Merge branch 'newplasma' of https://github.com/badvision/lawless-legends into newplasma 2017-08-09 12:03:17 -07:00
David Schmenk
cfe372cb39 Correct DEFCNT value for lambda functions 2017-08-06 20:53:29 -07:00
Martin Haye
ece9066587 Merge branch 'master' into newplasma 2017-08-06 11:28:20 -07:00
Martin Haye
c02f9f8f83 Allow scripts to add skills and XP. 2017-08-06 11:23:40 -07:00
Martin Haye
c603f9207e New recompliation of PLASMA compiler. 2017-08-04 10:19:24 -07:00
Martin Haye
6f5a504a50 Merge branch 'newplasma' of https://github.com/badvision/lawless-legends into newplasma 2017-08-04 10:16:23 -07:00
David Schmenk
6731288a29 Fix lambda ENTER frame size 2017-08-04 10:12:55 -07:00
Martin Haye
01491a5038 Merge branch 'master' into newplasma 2017-08-04 08:48:34 -07:00
Martin Haye
0a077a83e2 Rebuilt plasma compiler for new features. 2017-08-04 08:26:46 -07:00
Martin Haye
f3f070bcba Pack clock and compass icons into global tileset in addition to avatars. 2017-08-04 06:58:17 -07:00
David Schmenk
6b8e02db98 PLASMA compiler update 2017-08-03 12:15:24 -07:00
Martin Haye
5efd81102f Fixed CB opcode (again) 2017-08-02 10:20:22 -07:00
David Schmenk
7b8637b773 Fix CFFB BIT operation with CB 2017-08-02 09:31:10 -07:00
Martin Haye
efc524c659 Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-07-31 09:20:16 -07:00
Martin Haye
60a6269b19 Temporary fix for disk detection logic in ProRWTS. 2017-07-31 09:20:08 -07:00
David Schmenk
131bcddcc4 Add new CFFB opcode in anticipation of new compiler optimizations 2017-07-29 07:38:41 -07:00
Martin Haye
1ecddcf190 Fixes for ammo on buy/sell/loot pages. Also, halved store profit so total for buy+sell is 100%. 2017-07-16 12:34:24 -07:00
Martin Haye
729758ab0f Making good progress on loot hand-outs. 2017-07-16 10:49:27 -07:00
Martin Haye
64fb24bd90 Fixed healing salve. 2017-07-16 08:09:54 -07:00
Martin Haye
926ba84665 Cleanup of ammo giving. 2017-07-16 07:38:47 -07:00
Martin Haye
e2b0d2d51d Coded ammo consumption and reloading. Now to test test test. 2017-07-15 11:41:29 -07:00
Martin Haye
4d9516901e Reworked skills/attributes screen so you can revise your decisions. 2017-07-14 08:41:10 -07:00
Martin Haye
e4030334a1 Fixed some combat bugs; added initial equipping 2017-07-11 08:56:14 -07:00
Martin Haye
2da46eacb4 Recompiled PLASMA to pick up Dave's recent fix. 2017-07-10 10:19:34 -07:00
Dave Schmenk
176a602bfa Fix dereference off of array 2017-07-10 10:09:25 -07:00
Martin Haye
30a5881f24 Implemented initial character naming, gender assignment, and XP/SP init. 2017-07-08 16:36:08 -07:00
Martin Haye
ce31c5bda8 Fixed cat locket problem. 2017-07-07 10:18:20 -07:00
Martin Haye
3b15ff0e48 Most combat rules implemented now. Also, combat speed now adjustable with up/down arrow, or +/- keys. 2017-07-04 09:15:50 -07:00
Martin Haye
4a44aee1f8 Some fixes on the inv/stat screens. 2017-06-30 09:30:29 -07:00
Martin Haye
4774b07d30 Fix to avoid immediately leveling up on new game. 2017-06-25 07:20:11 -07:00
Martin Haye
a52c9cc039 Fleshing out the skills/stats display. 2017-06-24 11:43:16 -07:00
Martin Haye
b972aa34b6 Adding some more XP/leveling stuff. 2017-06-16 11:31:42 -07:00
Martin Haye
6fdc16cd88 Crawling ahead with level up logic. 2017-06-14 09:22:05 -07:00
Martin Haye
90d9238002 Adding level, XP, SP, etc. 2017-06-13 10:07:03 -07:00
Martin Haye
2585a84553 Some argument count fixes. 2017-06-11 08:55:03 -07:00
Martin Haye
7c9f7138d9 Finally added all function prototypes. Now for bug hunting. 2017-06-11 08:25:15 -07:00
Martin Haye
eea4767a51 More prototypes. 2017-06-10 07:32:31 -07:00
Martin Haye
3ac73e7165 Adding more function prototypes. 2017-06-10 07:21:58 -07:00
Martin Haye
94c3b50cc6 Stop suppressing PLASMA warnings. 2017-06-09 07:43:52 -07:00
Martin Haye
5e7ae1dc58 Turned on PLASMA optimizer - saves 4.2k\! 2017-06-09 07:17:37 -07:00
Martin Haye
f56fb140d0 Jar'd new version of PLASMA. 2017-06-09 06:57:49 -07:00
Martin Haye
7ba5bcb3e7 Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-06-09 06:44:10 -07:00
Dave Schmenk
1cb302f75d Fix predef and asm with parameters & multiple predefs per line 2017-06-07 19:28:13 -07:00
David Schmenk
1f6ed64793 Optimize NOT before branch true/false 2017-06-07 17:43:28 -07:00
David Schmenk
082f10424e Branch optimizations 2017-06-07 16:20:08 -07:00
David Schmenk
4343292057 Add warning for all mismatched funtion parameter counts 2017-06-07 10:16:13 -07:00
David Schmenk
7ee5a3d524 Implement better constant string management 2017-06-07 10:07:14 -07:00
Martin Haye
9d5acd1006 Updated PLASMA compiler and VM. 2017-06-07 07:01:50 -07:00
Martin Haye
b69be27f84 Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-06-07 06:54:51 -07:00
David Schmenk
3f880ecb67 Fix pointer, pointer constructs and quoted string scan_rewind 2017-06-06 12:54:19 -07:00
Martin Haye
7a43bf0d95 Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-06-05 08:36:49 -07:00
dschmenk
1e031d6de0 Update PLASMA VM and compler to pre-1.0 2017-06-04 07:33:44 -07:00
dschmenk
52ec55babe Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-06-04 07:26:05 -07:00
dschmenk
640b305401 VM updates for 1.0 2017-06-04 07:25:20 -07:00
David Schmenk
a38667e704 Update PLASMA VM and compiler to pre-1.0 2017-06-03 15:51:48 -07:00
Martin Haye
2c50d19c48 Outlaw-configurable combat and enemy intro text now working. 2017-06-02 08:25:29 -07:00
Martin Haye
1d0b205d48 Making progress on customizable global functions for leveling and combat messages. 2017-05-30 11:18:37 -07:00
Martin Haye
17c94cff7e Marking a map with negative order now causes it to be replicated on every data disk. 2017-04-10 08:35:27 -07:00
Martin Haye
1215e12e07 Lots of work on selling especially, but also plural item display on inventory screen. 2017-04-03 08:22:32 -07:00
Martin Haye
4c0b02931d Improved buy/sell Blockly blocks that can take parameters, to support a parameterized global Merchant script. 2017-04-02 09:25:11 -07:00
Martin Haye
1cc3d8b67a Can now buy items. 2017-03-29 09:36:14 -07:00
Martin Haye
8fdaf7b237 Merge branch 'master' of https://github.com/badvision/lawless-legends 2017-03-29 07:36:30 -07:00
dschmenk
be928b081d Check for existing string in pool before copying CS string from aux mem 2017-03-27 08:53:01 -07:00
Martin Haye
121753c45d Fixed warning display. 2017-03-23 07:07:29 -07:00
Martin Haye
142f50a695 Oversized window for buy and sell. 2017-03-22 09:46:17 -07:00
Martin Haye
3611b8ebb5 Making progress on store buying. 2017-03-17 17:18:40 -07:00
Martin Haye
4ee9116e82 Added floppy disk usage to pack_report.txt 2017-03-15 07:46:27 -07:00
Martin Haye
60cc77a59e More groundwork for buy/sell from stores. 2017-03-04 08:20:01 -08:00
Martin Haye
ff1e31cd44 Adding buy/sell store logic. 2017-03-03 08:25:45 -08:00
Martin Haye
47d86a3dca Fix for number of fixups > 127 2017-02-25 11:56:27 -08:00
Martin Haye
6dee0388b1 Added ability to increase or decrease a stat for all party members. 2017-02-24 08:49:12 -08:00
Martin Haye
eb9691cb20 Proper dependencies for global funcs. Look for portrait on correct disk. 2017-02-20 07:42:23 -08:00
Martin Haye
d7d2ae3bbb Added a god-mode cheat for adding an NPC to the party. 2017-02-20 06:43:47 -08:00
Martin Haye
c29176722d Externalized godmode commands; only load when enabled. 2017-02-19 10:08:03 -08:00
Martin Haye
c7e336355a Made combat win and death portraits root deps. Commented out a bunch of debug prints. 2017-02-17 09:26:57 -08:00
Martin Haye
ad6b3f5ef8 Lots of fixes, related to reseek and resource lookup. 2017-02-17 09:01:35 -08:00
Martin Haye
eb2710865f Now using resource index... not right, but using it. 2017-02-06 10:01:00 -08:00
Martin Haye
826176f344 Work around AppleCommander last-block bug. Add resource map to disk 1. 2017-02-06 07:49:00 -08:00
Martin Haye
c4898ef65f Now calculating exact disk sizes. 2017-02-05 11:49:23 -08:00
Martin Haye
87926d1584 Trying to get exact sizes now. 2017-02-05 11:20:13 -08:00
Martin Haye
3c49a6c7ce Fixed some disk split bugs. 2017-02-05 11:05:26 -08:00
Martin Haye
c060bf31d4 Lots of progress on disk split allocation. 2017-02-05 09:45:34 -08:00
Martin Haye
30dd953d44 Made some progress on disk splitting... lots left though. 2017-02-02 10:20:39 -08:00
Martin Haye
2b78f31b5a I think I'm now tracking all the dependencies needed for proper disk splitting. 2017-01-29 10:47:58 -08:00
Martin Haye
6bf9889488 A couple little comments. 2017-01-29 09:43:02 -08:00
Martin Haye
cd090db01f Split long lines to making editing easier. 2017-01-29 09:40:14 -08:00
Martin Haye
9d313d5176 Added order field to maps. Fixed some loader bugs. 2017-01-29 09:23:58 -08:00
Martin Haye
32656bd6fc Removed dependency on lz4, since we have our own compression algorithm now. 2017-01-25 07:48:20 -08:00
Martin Haye
a143026583 Refactored packer to use compressed byte arrays most everywhere, because they're so much easier to work with then Java ByteBuffer. 2017-01-24 10:47:01 -08:00
Martin Haye
12760c330b Read XML file only once. 2017-01-22 14:45:41 -08:00
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
7fb830793c Doing some speed testing. 2017-01-15 09:10:43 -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
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