Quote:
The info you want is probably in the file named "e_900h_chap3_cpu_6.pdf", but you want to be using the right docs (why I'm including the rest, since I can't find them online).
Thank you very much! I took a diversion from the NGPC code to do some rather unexpectedly intense core restructuring, but I'm gearing up to resume work on the NGPC now. I'll take a look through these docs, much appreciated!
I found a few random 900/H PDFs, usually in Japanese (which was fine), to describe the 900H-only functionality like LDX. Then I found an English one for the 900/H control register map. But for the most part, the docs are from the 900/H1. There were notes about the differences between the 900, 900/H, and 900/H1, so I tried to steer clear of doing anything 900/H1 specific.
Still, better to use 900/H docs, definitely!
Quote:
Hello. I'm the original author of NeoPop.
It's an honor! Thank you for stopping by!
Quote:
it's literally 'my first CPU core'
Wow! It is an absolute beast of a CPU. It's larger than my 68K core, and barely anyone in the world uses it or talks about it. No test suites exist for finding implementation issues (zexall, ARMwrestler, krom/65816, etc) either.
My hat is off to you. There is no way I could have ever done this as my first core.
Quote:
I can at least confirm that the instruction timings are pretty much made up and have no bearing on the real hardware
Thank you for confirming that, at least. I completely understand that in absence of good information, we have no choice but to make reasonable guesses. Bit of a shame though, this is also the first CPU I've worked on where I can't even find a simple abstract list of instruction timings.
Quote:
Fortunately it's a very forgiving system.
That's going to be my saving grace, for sure, heh.
Right now I have things running far along enough to put a bunch of pixel patterns into RAM, but nothing that remotely resembles the BIOS logo yet. I usually start with Mednafen trace logs to compare to my newer CPU core to find obvious logic bugs, but in this case, it looks like an HLE BIOS was used. Guessing this is because 20 years ago, the BIOS wasn't dumped yet.
(Believe it or not, it's 2019 and we still haven't been able to dump the WonderSwan boot ROMs.)
Quote:
For timings I think the datasheet will probably be your best bet, it has the number clocks/states for each instruction.
The raw bus timings on 38 unfortunately don't tell us anything about instruction timings. Page 165's "states" list looks promising, but it doesn't begin to attempt to explain what is going on with each state.
Well, I suppose it's a very good start. Thanks again for stopping by, and your past work on NeoPop!
Quote:
I can run test ROMs on hardware (including link cable tests) if needed.
Thank you as well!
The thing I need more than anything right now are some good instruction trace logs from a working CPU core. I think I'm going to have to bite the bullet and figure out how to use MAME's debugging functionality to try and create a trace log of the NGPC BIOS running.
Once I have the system up and functional, I'm fairly certain some hardware tests would be needed, so if you don't mind me asking you later on, that could definitely come in handy, thank you!