Post subject: O2Hawk (Odyssey 2 core)
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
Now that I have this core more in working order I thought I'd make a thread for it. there are still numerous bugs to fix but things are slowly coming together. Some games are now completely playable, but it will probably be another couple of weeks before this core can be declared ready for TAS production.
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
This core is shaping up and starting to approach release levels of accuracy. The biggest problem I'm facing right now is that various homebrew's I test don't look right compared to O2EM, but I'm not confident that O2EM is truly representative of hardware. At this point if anyone is willing to do some beta testing with some actual retail Odyssey2 games I would appreciate any bug reports. TASing should be in full working order at this point.
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
I fixed a collision detection bug so more games should be functional now. Games I tested included UFO and KC Munchkin.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
Are you sure you are ready for testing? There's a lot of games that don't work but because they need mappers I'm pretty sure. But here's my preliminary findings: Doesn't work at all Super Cobra (EU) Buraco Negro (Brazil) Spiderman The blobbers Other issues Frogger (EU) - game play fails (title screen works) Chess - no pieces
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
Thanks for testing, I'll start looking into those bugs and mappers too. And yeah work on this has been slow and inconsistent, I'm trying to knock things off my todo list so I can focus a bit more.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
Do you have any docs on mappers? I haven’t been able to find much.
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
adelikat wrote:
Do you have any docs on mappers? I haven’t been able to find much.
Nope. Which games specifically are you referring to? I should be able to guess at a mapper implementation with trace logger. Also do you know of any US games that don't work? I see the above list consists mostly of EU (videopac) games which technically aren't implemented yet but is next on the lsit.
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
I've been too busy to do any dev work lately but I did some research to follow up here. From what I can tell there are no mappers in the Odyssey II or Videopac G7000, or even videopac+ G7400. Maximum game size is 12KB of which there are 2 examples (neutron star #55 and air battle #58) There are bank select registers for games over 2 kb, but those are properly emulated from what I can tell. So once again if anyone knows any US (i.e. Odyssey 2) games that aren't working please list them so I can look at them first as they are what should be supported right now.
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
I added PAL mode to O2Hawk (i.e. a videopac G7000 mode) so any testing of PAL games would be helpful. Particularly audio since that is usually a weakness.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
So, I did some testing and found that the keyboard seems to not be mapped correctly. The numbers aren't quite right. 6 is pressing 1, 7 is 2, etc. And 1 is 6. This is apparent if you try Math-A-Magic, where you type answers to math problems. Notice the screenshot, the input display shows I pressed 6, but the output is 1 Screenshot I have some other issues I found but it is hard to know what is the emulator or the actual hardware, so I will do some more research first. Just wanted to point this one out as it is a pretty big one that makes testing hard if you don't know about it.
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
keyboard is fixed, thanks for testing.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
So I was building out the virtualpad for this core and noticed that the image of the keyboard shows that it has a standard QWERTY keyboard and Yes/No buttons. I noticed the core only has Yes/No and no Y and N keys. Does the Yes/No actually map to Y and N on real hardware? or is this an oversight of the core?
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
They are the same, perhaps I should rename them (Y)es and (N)o or some similar distinction. Or is it easier to just add in two more distinct entries and map them to the same place?
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
I think it is fine as is, I just wanted to be sure so I map them correctly on the virtualpad
It's hard to look this good. My TAS projects
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
Another keyboard question From the looks of it in this picture: This picture There's a top row of buttons that I can't quite tell what they do but they aren't represented by the currently controller button options. Do you know anything about these?
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
adelikat wrote:
Another keyboard question From the looks of it in this picture: This picture There's a top row of buttons that I can't quite tell what they do but they aren't represented by the currently controller button options. Do you know anything about these?
That is the videopac G7400. It is the successor to the Videopac G7000. The G7000 is equivalent to the Odyssey2. The G7400 would have been equivalent to the Odyssey 3 which was never released. G7400 is not currently emulated so those buttons are not accounted for in the current core. G7400 only has a couple of unique games, the others are just G7000 games with additional high res graphics, so I consider it low priority follow on work similar to the Chess and voice modules.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
Ah ok, my bad I had the wrong picture! Is this a more accurate picture then?
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
Yup that's it.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
So here is some issues I found. I have found about 5 more that I need to look into more but they seem the same basic theme as these problems. So I wanted to go ahead and post: Armored Encounter + Sub Chase (1980)(Philips)(EU-US) Select game 1 (pressing 1 on keyboard) The game will start with a 3 minute timer, do nothing and let the game clock run to 0 Notice the core seems to "crash", all lag frames after that and no way to continue, Pressing "Power" doesn't reboot to a bootable state, have to reboot core Bowling + Basketball Press 1 to get to bowling, play and entire game, seems to crash, and need a reboot Blockout + Breakdown (1981)(Philips)(EU-US) Lot of sceanline looking issues Also, hold enter, and the backgrounds start flashing rapidly, I don't think any of this should happen https://www.youtube.com/watch?v=xBtFOlqG-d0 Consmic Conflict (1980)(Philips)(US) The center of the screen is flashing black and blue at 30hz. Footage of this game doesn't suggest this happens, but of course a 30fps youtube video wouldn't show that so I can't be 100% sure, but it's pretty bad looking Great Wall Street Fortune Hunt, The (1983)(Philips)(EU-US) The stock banners alternate with color and black every other frame. Again, since it is 30hz, footage doesn't necessairly prove the real game doesn't do this, but it seems likely this is a bug Pinball (USA) (Proto) This one is a just a prototype so I don't know that this is not game behavior, however the ball can go through the top wall of the screen. I mention it because I know previously there were collision detection issues, so didn't know if this was a potential problem like that
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
Cool thanks for testing, I'll start looking into those.
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
Sub Chase also stops after 3 minutes on O2EM. O2EM isn't the most accurate emulator, s I'm not 100% certain if it's intended or not, I'll look into it a bit more. I did add a reset button and fixed hard reset so it works now. I'll try knocking out those other bugs as well.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
Awesome! You rock! Excited to see those fixes.
It's hard to look this good. My TAS projects
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
Leaving some notes here about Blockout. When running in the intro screen of 'blockout' (where it says 'press 1') the game is doing too much in one frame and it misses VBL interrupt, this is what causes the screen to flash. It can miss it by a wide margin, up to 2 scanlines, so this isn't something a small timing tweak can fix. The reason it is doing too much is that it runs extra routines for ball reflections and keyboard scanning, and this is just a little too much stuff. I looked for evidence of this in actual gameplay videos and found this: https://www.youtube.com/watch?v=DuMK4VhiwIo You can see around 2:28 in the video that there is a graphical artifact in the top right corner of the screen. So it's definitely also having trouble on console. The difference is that this only effects a couple scanlines. I'm not sure what mechanism I'm missing that allows this to happen. On the right track though. EDIT: It also turns on HBL interrupts and expects them to either not happen or happen only once per frame.
Alyosha
He/Him
Editor, Expert player (3537)
Joined: 11/30/2014
Posts: 2734
Location: US
image hosting I did a lot of rework on the ppu and now things are working much better. Blockout behaves like console now, as does Cosmic Conflict, which is now closer to console then O2EM. The good thing about Cosmic Conflict and Blockout is that they both do fairly careful timing things but in different ways, so if they are both correct at the same time it's a pretty solid indication that the emulation is close to correct. A big open end remains in that Blockout turns on HBL interrupts but expects them to not happen. I don't know what's up here, I would need to find a game that actually uses HBL interrupts constructively to do things correctly but so far I can't find one. Anyway as always more testing is appreciated. I think I'm getting close on NTSC, PAL still needs some work though.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3600)
Joined: 11/3/2004
Posts: 4739
Location: Tennessee
Nice work! This definitely knocks a few problems off my list There's still the issue that after a game the game "crashes". I don't know if this is expected or not but here are some new examples: matchmaker - crash after making a guess out of this world - game 1 - crashes at end of timer Also: Powerlords game 1 - shaky scanline issues this video for reference. I think there is an issue here
It's hard to look this good. My TAS projects