|
Post by spiff on Jun 23, 2008 16:36:36 GMT -5
I have been playing around with DTV patching Last Ninja 2, which is one of my favorite C64 games. This being the first multi-part game I have attempted to patch means there are new challenges for me.
I have successfully removed the intro and depacking from the first file, which seems to have the game engine etc. Disassembling this and tracing it in VicePlus, I have discovered that the reason it does not work correctly when an alternate kernel is used, which remaps device 8 access to the flash, is because it does not use the memory load function, but rather the getchar function ($EE13), which does not work with device 1.
So I was thinking of implementing a getchar function for the flash. This needs support for file names, to find the location of the file. And then reading a single byte, which is probably not optimal.
A better solution is probably to put the level files in highmem and making the getchar function to fetch data there. This will also allow crunching the level data with exomizer. But I wonder if this is doable. The uncrunched level-data is 250kB. Compressing with exomizer yields 208kB, so not much is gained.
How will a single .prg of 208kB load on the DTV. Am I correct in assuming that this needs a patched kernel to work?
Also, I would rather have the decrunching done between each level, so it does not take so long to decrunch the whole thing at startup. Any suggestions for the best way to achieve this?
|
|
|
Post by 1570 on Jun 24, 2008 4:51:12 GMT -5
- Read picobay.com/dtv_wiki/index.php?title=Fixing_Games_for_the_DTV#FAQ - there the process of patching level loaders is explained.
- Replacing all the loading code is better than writing a EE13 replacement: Probably the code you found in the game already does decrunching while loading levels. Decrunching on first start of the game on the DTV is faster and more efficient (dtvDexomizer is faster and achieves better compression than most old compressors).
- vsfReanimator and dtvDexomizer save LOTS of time while patching games.
- A patched kernal is NOT needed for large files in flash. Didn't you try Armalyte or Mayhem in Monsterland?
|
|