Thomas Jentzsch Posted June 8, 2004 Share Posted June 8, 2004 Montezuma's Revenge The archive contains NTSC and PAL binaries which should work with standard 16K boards. montezuma_s_revenge.zip Quote Link to comment Share on other sites More sharing options...
DEBRO Posted June 8, 2004 Share Posted June 8, 2004 Montezuma's Revenge The archive contains NTSC and PAL binaries which should work with standard 16K boards. What no source? Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 8, 2004 Author Share Posted June 8, 2004 What no source? There is no source, I just analyze the z26 tracefile for bankswitching and used slice combination and then patch the ROM. Quote Link to comment Share on other sites More sharing options...
Susuwatari Posted June 9, 2004 Share Posted June 9, 2004 One down, about 100 more 8K non F8 games to hack... Thanks, I've been itching to play one on the real 2600 and the cart usually sells for too much on eBay. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 9, 2004 Author Share Posted June 9, 2004 One down' date=' about 100 more 8K non F8 games to hack... [/quote']I don't know where you got that high number. Unfortunately many different bankswitchings can not be converted that easily or not at all. Especially any extra RAM game is currently impossible. But I'll work on some more Parker games when time permits. BTW: The conversions hasn't been tested on real hardware yet. So if anybody does it, please report your results. Thanks Quote Link to comment Share on other sites More sharing options...
bjk7382 Posted June 9, 2004 Share Posted June 9, 2004 BTW: The conversions hasn't been tested on real hardware yet. So if anybody does it' date=' please report your results. Thanks [/quote'] Works good for me. I am no good at the game (and don't care for it either) but it worked as far as I could see. I only got 3500 points, so I didn't get very far Quote Link to comment Share on other sites More sharing options...
Gregory DG Posted June 9, 2004 Share Posted June 9, 2004 Why did this one need to be hacked anyway? I have the other version on my CC2 and it works fine. It also worked with Z26... Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 9, 2004 Author Share Posted June 9, 2004 Why did this one need to be hacked anyway? Carts? Quote Link to comment Share on other sites More sharing options...
Bruce Tomlin Posted June 9, 2004 Share Posted June 9, 2004 I've got a halfway commented disassembly I've been working on. I regularly check that it generates a binary that matches the original 8KPB ROM. I'll try to clean it up and post it here since I haven't worked on it for at least a week. Most of what I haven't got commented is the game logic code. The display kernals were the easy part. Quote Link to comment Share on other sites More sharing options...
Dav Posted June 9, 2004 Share Posted June 9, 2004 What no source? There is no source' date=' I just analyze the z26 tracefile for bankswitching and used slice combination and then patch the ROM.[/quote'] I've been playing with the mess source code. I have it outputting the bank and pc for all bankswitching to the error log. Then a vb program compiles this and automatically builds a rom and a list of pc that bankswitch to each bank. The next step is for the vb program to patch the new rom but I haven't gotten that far yet. The problem is I ended up with an F4 rom not an F6 so I got discouraged. I think it might be easier to build a pb cart that to convert them automatically. Quote Link to comment Share on other sites More sharing options...
jsoper Posted June 9, 2004 Share Posted June 9, 2004 I've got a halfway commented disassembly I've been working on. Wow, all that disassembly stuff always blows me away. Having a huge file of bits and trying to figure out which ones are code and which ones are data just seems impossible Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 9, 2004 Author Share Posted June 9, 2004 I have it outputting the bank and pc for all bankswitching to the error log. Then a vb program compiles this and automatically builds a rom and a list of pc that bankswitch to each bank. That's about the same that I did with my Pascal program. I recorded all 1K slice accesses between two bankswitchings, here is how the result for Montezuma's Revenge it looks like: slice 0 1 2 ------- - - - fcef fcf2 fcfb fcfe 0 - - fcf5 3 - - fd18 fd07 fd12 4 - - fd01 0 1 - fd1e 0 - 2 fcf5 - 1 2 fd28 0 1 2 fd1e fcf5 - - 6 fd22 4 5 6 fd01 As you can see, there are quite a few switches after which only a few slices are accessed, so it doesn't matter what's inside the other ones. Therefore I could reduce the slice combinations to: 0 1 2 fd1e fcf5 fd28 3 - - fd18 fd07 fd12 4 5 6 fd01 fd22 So actually I only needed 12K this time. Quote Link to comment Share on other sites More sharing options...
Dav Posted June 9, 2004 Share Posted June 9, 2004 I haven't figured out how to get mess to tell me what slices were accessed. Well actually I have,I made a new read handler, what I haven't figured out is how to get it to return the value fetched from the rom as well as a used flag. My C is a little rusty. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 9, 2004 Author Share Posted June 9, 2004 Well actually I have' date='I made a new read handler, what I haven't figured out is how to get it to return the value fetched from the rom as well as a used flag.[/quote']Why do you need the flags or the value? All you need are the code addresses and the data addresses accessed by the code. Quote Link to comment Share on other sites More sharing options...
Bruce Tomlin Posted June 9, 2004 Share Posted June 9, 2004 I've got a halfway commented disassembly I've been working on. Wow' date=' all that disassembly stuff always blows me away. Having a huge file of bits and trying to figure out which ones are code and which ones are data just seems impossible[/quote'] You just need a code-tracing disassembler and a little practice on what looks like code and what doesn't, and keep re-running the disassembler until you've found everything. It's figuring out what the code actually does that's the hard part. Quote Link to comment Share on other sites More sharing options...
Dav Posted June 9, 2004 Share Posted June 9, 2004 It's the read handler for the cpu, it normally just reads the rom and sends the value to the cpu. What I was trying to do was have it set a flag if it actually read from each slice. I'm trying to reduce the data to look at, I don't wan to log every read. currently the log looks like this. Gyruss BTW PC slice bank 1 2 3 ----------------------------------------------- Bank PC fca2 Set 3 = 6; 0 0 6 Bank PC fca5 Set 2 = 5; 0 5 6 Cons Bank PC fdb8 Set 1 = 3; 3 5 6 Bank PC fdca Set 1 = 0; 0 5 6 Bank PC fdf0 Set 1 = 3; 3 5 6 Bank PC fdfc Set 1 = 0; 0 5 6 Bank PC fd5d Set 2 = 1; 0 1 6 Bank PC fd60 Set 3 = 2; 0 1 2 Cons Bank PC fd66 Set 2 = 5; 0 5 2 Bank PC fd69 Set 3 = 6; 0 5 6 Cons Bank PC fcdc Set 1 = 3; 3 5 6 So far I know to ignore combinations if they are banked consecutively. The ones with short gaps could probably be ignored but I want mess to sort that out for me, by clearing read flags for each slice every time there is a bank and setting them if a slice was used. I was able to make it do that but in the process it quit sending the fetched values to the cpu and the game no longer ran. I'm not really that good with C, I can usually get by but it seems the a2600 driver is too much for me. If I can figure that out then the process pretty much becomes automatic. Quote Link to comment Share on other sites More sharing options...
Bruce Tomlin Posted June 9, 2004 Share Posted June 9, 2004 Okay, here it is. montzuma_2004_06_09.zip Quote Link to comment Share on other sites More sharing options...
Bruce Tomlin Posted June 9, 2004 Share Posted June 9, 2004 Those of you following along with the home game might want this too. It's esentially the same as stella.h but it's the one that I used with this. 2600.asm.zip Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 9, 2004 Author Share Posted June 9, 2004 Okay' date=' here it is.[/quote']Why are you using such a weird format? Why not DiStella/DASM? Quote Link to comment Share on other sites More sharing options...
Bruce Tomlin Posted June 9, 2004 Share Posted June 9, 2004 Wierd? It's perfectly normal 6502 assembly language. And I wrote the assembler myself, thank you very much. FYI, the RORG thing is something I came up with when doing this one disassembly as a quick and dirty way to make all the various pieces of the ROM come out in the right order. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 9, 2004 Author Share Posted June 9, 2004 Wierd? It's perfectly normal 6502 assembly language. And I wrote the assembler myself' date=' thank you very much.[/quote'] I didn't wanted to criticize you. I just meant that most current 2600 programmers (like me) use (and understand) DASM syntax. By using a different syntax, you make it a bit tougher for us to use your results. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 9, 2004 Author Share Posted June 9, 2004 BTW: Don't worry if you need 32K, the hardware costs are identical. And Gyruss is really nasty, because the some slices are used in different segments. That's different to the three ones I did. Quote Link to comment Share on other sites More sharing options...
Dav Posted June 9, 2004 Share Posted June 9, 2004 And Gyruss is really nasty' date=' because the some slices are used in different segments. That's different to the three ones I did.[/quote'] I wasn't expecting that, I wondered if that was normal for these or if I was just lucky on my selection. For a multicart 32k adds up fast, I think I might be better off implementing the pb banking. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 10, 2004 Author Share Posted June 10, 2004 Ok, I think I finally was successful, but somebody who knows the game better than me should test it. Gyruss is really a beast when converting to F4, some hotspots rely on different previous settings for unchangd segments. I just hope I got them all. gyruss__ntsc__f4_.zip Quote Link to comment Share on other sites More sharing options...
bjk7382 Posted June 10, 2004 Share Posted June 10, 2004 Ok' date=' I think I finally was successful, but somebody who knows the game better than me should test it. Gyruss is really a beast when converting to F4, some hotspots rely on [b']different[/b] previous settings for unchangd segments. I just hope I got them all. I tested gyruss on real hardware and didn't notice any problems. I got 101900, but I don't know if that would be testing all the parts you changed. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.