Debug for NeoCD

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
I should be able to piece together a working top loader today. I found a spare motherboard that I can do the bios mod on. I'll let everyone know the results.
 

IDCHAPPY

The Mad Jock.
Joined
Oct 6, 2009
Posts
3,277
Just wanted say what other folks have said, well done for getting the ball rolling on this you tech guys are brilliant :)
 

smkdan

Galford's Armourer
Joined
Dec 30, 2009
Posts
452
Razoola said:
I have looked at this code in the past and it can be optimised very easily, its just a case of if the code will be to fast for the hardware to handle. Sort of the same problem that affects the MVS when overclocking the cpu, ports for writing to GFX RAM are not able to keep up.

Raz

Was hoping not to hear that but it's to be expected I guess. The only other thing I can think of is to cache the relevant bits of the file system (or just keep sector #s and filenames in main RAM at all times) so it doesn't have to waste time seeking/loading between file reads. I remember reading from an ex-Sony guy that they optimised PSX load times by doing something like that. Ofcourse if it already does this (I have not looked as far into disc i/o as you I think) then oh well, that's all that comes to mind without fiddling with those Sanyo chips that seemingly control the drive.

NeoTurfMasta said:
I should be able to piece together a working top loader today. I found a spare motherboard that I can do the bios mod on. I'll let everyone know the results.

Nice, it's good that it actually works on a Z but compatibility between them would be great. If it doesn't work, it probably needs to be based on the original top loader BIOS. My stuff doesn't use anything out of the ordinary but being based on the CDZ BIOS might cause issues if it tries to access something that wasn't implemented in older models etc.
 

Xian Xi

JammaNationX,
15 Year Member
Joined
Dec 1, 2005
Posts
27,748
I'll have time today to test on a top loader. I hope I didn't sell all my games.
 

Xian Xi

JammaNationX,
15 Year Member
Joined
Dec 1, 2005
Posts
27,748
Am I going to need to do some wire-fu on the toploader bios or is it a direct drop in?
 

Xian Xi

JammaNationX,
15 Year Member
Joined
Dec 1, 2005
Posts
27,748
Dammit, I forgot that I sold my gamer CD system, only one I have is my boxed system.
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
OK, had a chance to test the bios on the TopLoader. No go. Recognizes disc is in, but will not load game.

EDIT: I'll have more time tomorrow to test things. But my initial quick test was bad. I know that the Top Loader is much more common, is it a big deal to switch the progress over to that version?
 
Last edited:

smkdan

Galford's Armourer
Joined
Dec 30, 2009
Posts
452
Going to need a dump of top loader BIOS then. The possible big deal is that every emulator I've seen relies on hacks + CDZ BIOS. I tried searching and found one apparently made by Jan Klassen or something, but I can't find either the emulator itself. nFBA had some talk of NGCD emulation on the forums but it's not in the release. I only know of NeoRaine and neo/sdl and they both are tied to the CDZ BIOS.

It means I can't do any sort of testing on it. This new BIOS only modifies a couple parts of the CDZ BIOS so if the same changes were made to top loader BIOS it might work. I need a dump of it before doing any of that.

I can make my setup automatically output 3 BIOS files for each of the systems I just need to know what sets them apart with the dumps.

in the mean time: This provides an ingame menu for the CDZ, if you want to test that on your Z (to see if it will even work on other systems) then just hold A+B then hit select.
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
If you cant find the toploader bios, I can dump mine but it will take a bit more time to make an surface mount adapter for my programmer. I'll give your updated bios a shot tomorrow. I'll also look to see if I have a copy of the toploader bios anywhere.
 

smkdan

Galford's Armourer
Joined
Dec 30, 2009
Posts
452
Can't seem to find it, only CDZ BIOS since that's all the emulators will work with. and your front loader BIOS dump was the first I've seen of it, it's hard to find any Non-Z BIOS.
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
OK. I ordered an adapter I can rig. I dont have any surface mount boards, and I dont want to damage the chip. Probably wont be here till Tuesday.
 

smkdan

Galford's Armourer
Joined
Dec 30, 2009
Posts
452
Awesome, thanks. Until then I'll get a little look at the frontloader BIOS.

some babbling about load times, since I now have one of the older systems to look at:

I found the part that checks what sector a certain file is by looking at the disc directory, on first glance it doesn't appear to cache but I'm probably wrong on this one. Hard coding sectors may help load times a lot, simply feeding the disc controller the sector # and length without need of the file system which means less unnecessary disc activity. I noticed LB2 has a huge amount of files that are pretty small, constant seeking back and forth by the disc might explain the nasty loadtimes. I wonder how fast it would load if that were cut out completely. Brian do you feel like doing any tests on your front loader? Name a game that you have if you're interested, preferably one with shit load times.

That's just speculation though (will try to confirm tomorrow), I only looked at it for 15 minutes and could use some sleep. I might put out a request a top loader soon. You mentioned something about solderless method of installing the BIOS, since there's no way I'm doing surface mount soldering what can be done about that? If that doesn't work out, I might ask Hewitson to socket it.

Improving load times without touching the CDROM would be nice, especially on the most common model (assuming toploader is very similar in code to frontloader).
 
Last edited:

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
Brian do you feel like doing any tests on your front loader? Name a game that you have if you're interested, preferably one with shit load times.

No problem at all. Not sure which game to pick, but any fighting game should work. KOF99 may be overkill, but since you mentioned LB, I can try that one if you like.

You mentioned something about solderless method of installing the BIOS, since there's no way I'm doing surface mount soldering what can be done about that? If that doesn't work out, I might ask Hewitson to socket it.

Still working on it. It's not completely solderless, but it's a definite improvement. I can send you a proto of it once I get it worked out. May be another few weeks though.
 

smkdan

Galford's Armourer
Joined
Dec 30, 2009
Posts
452
LB2 it is then. Will get to that a bit later, but here is the ROM it will be based on. That should give the exact same effect as the custom BIOS based on CDZ. It's the same thing just based on front loader BIOS instead.

smkdan said:
I'm probably wrong on this one

I was wrong there, looked at the wrong section. There's a bit of time to be saved but not much. Since I already figured out the BIOS<->CD interface it won't take any real effort to atleast implement it and see what happens with LB2. KOF99 is another good one, might upload one soon that tries to optimize both. If the frontloader BIOS I just posted works, this CD hack should work too.
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
Awesome, I'll get you an answer to the new front bios by the end of the day today.
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
Just tried the frontloader bois. Game starts loading, the region dip screen flashes on the screen, then reboot. I should have my surface mount adapter in by Tuesday to get the toploader dumped for you. I doubt many people will swap it on a frontloader anyways :)
 
Last edited:

smkdan

Galford's Armourer
Joined
Dec 30, 2009
Posts
452
I knew what the problem was the moment I read that. It was a stupid typo on one line. That's all that stopped it from working. I won't upload a fix since I'm sure that's all it was, it would've been the same thing you saw on the CDZ.

As soon as you get the toploader BIOS up, I'll get it running on that. There's no problem getting something for all 3 systems, I already have it generating BIOS files automatically for both systems I have info for now and they are all based on the same patch. It's literally 2 or 3 lines to add toploader support, nothing else.

source code said:
IF SYSTEM_Z
DEPENDANT_ReadController EQU $C09444
DEPENDANT_PostIPLExit EQU $C0A872
ELSEIF SYSTEM_F
DEPENDANT_ReadController EQU $C0B9F6
DEPENDANT_PostIPLExit EQU $C0CF7A
ELSEIF SYSTEM_T
;...
;...
ENDC
 

DanAdamKOF

Iori's Flame
20 Year Member
Joined
Jun 15, 2002
Posts
8,250
I still can't get over how cool this is that it came together so quickly.

"Hey guys how bout a modchip for the neoCD"
"lol here"
"cool thanks"

you ASM hackers have my infinite respect.
 

Hewitson

Metal Slug Mechanic
Joined
Mar 6, 2008
Posts
2,198
IF SYSTEM_Z
DEPENDANT_ReadController EQU $C09444
DEPENDANT_PostIPLExit EQU $C0A872
ELSEIF SYSTEM_F
DEPENDANT_ReadController EQU $C0B9F6
DEPENDANT_PostIPLExit EQU $C0CF7A
ELSEIF SYSTEM_T
No idea what that is, but its sure as hell not 68k asm.
 

smkdan

Galford's Armourer
Joined
Dec 30, 2009
Posts
452
Had some time to work on it yesterday, added backup RAM functions:

mc2.PNG
mc3.PNG


You save region/dips/softdips and save, it auto-loads the config for a game after initial load if it finds one. The same menu can be pulled up at any time in game if you want to switch around (it's start+select now). It should fit fine with other saves, it just takes the game name + " DBG" in the data names and it fakes an NGH ID so it won't clash with any other game. With 8KB it won't eat much space per save, it reserves the smallest space it can (64 byte) in the backup RAM. If you wanted blood+English you just get in the softdips, save, then it should come up automatically when you bootup in the future.

@Hewitson: the 68k stuff is elsewhere, that's part of the preprocessor. It defines targets for jmp instructions since they were moved around with each system.
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
Kickass man, great work! I'm still waiting for my smd adapter, not sure what the holdup is.
 

Hewitson

Metal Slug Mechanic
Joined
Mar 6, 2008
Posts
2,198
@Hewitson: the 68k stuff is elsewhere, that's part of the preprocessor. It defines targets for jmp instructions since they were moved around with each system.
That makes sense. What assembler are you using? I've not seen that sort of syntax before.

How did you learn 68k? Amiga?
 
Top