|
Joined: Apr 2004
Posts: 1,563 Likes: 12
Very Senior Member
|
Very Senior Member
Joined: Apr 2004
Posts: 1,563 Likes: 12 |
What Zero Wing seems to do is:
1. request z80 bus
2. clear z80 reset
3. copy inital z80 "ram clear program" to the z80 ram area
4. start z80 reset
4. return z80 bus
5. clear z80 reset
6. do some stuff
7. start z80 reset
8. request z80 bus
9. clear z80 reset
10. copy sound program to the z80 ram area
11. start z80 request
12. return z80 bus
13. clear z80 reset
Followed by a long list of 'return z80 bus' and 'clear z80 reset' messages which shouldn't do much since the lines are already released. At point 3 however, the z80 is actually running. I'd say that that is incorrect, it should be halted/wiating for the bus to be released.
|
|
|
|
Joined: Mar 2001
Posts: 17,215 Likes: 234
Very Senior Member
|
Very Senior Member
Joined: Mar 2001
Posts: 17,215 Likes: 234 |
Yeah, clearing reset AFAIK doesn't actually run the Z80 if the bus is held, so it shouldn't start running until step 5.
|
|
|
|
Joined: May 2004
Posts: 1,772 Likes: 34
Very Senior Member
|
Very Senior Member
Joined: May 2004
Posts: 1,772 Likes: 34 |
Yeah, clearing reset AFAIK doesn't actually run the Z80 if the bus is held, so it shouldn't start running until step 5. From what I remember that's correct, it shouldn't run unless it's got the bus, and the reset line has been cleared. In both reset high and non-bus state the z80 goes nowhere, and afaik that's how it used to behave.
Last edited by Haze; 04/27/09 06:55 PM.
|
|
|
|
Joined: Jan 2006
Posts: 3,691
Very Senior Member
|
Very Senior Member
Joined: Jan 2006
Posts: 3,691 |
speaking of broken systems, I tried to fix jaguar today (bug 1766). I came to the conclusion that somehow jaguar bios is loaded with the wrong endianness: if you start any jaguar cart, you see immediately that the CPU reads an illegal instruction rather than jumping to E00000 as expected.
culprit could be either ROM_LOAD (cojag uses a REGION32_BE) or the part of MACHINE_RESET(jaguar) where the first 0x10 bytes of the bios are copied to the shared RAM.
However, I haven't managed to fix it (probably because I used the wrong combination of ROM_REGION/ROM_LOAD....) Has anyone any suggestion about this?
|
|
|
|
Joined: Mar 2001
Posts: 17,215 Likes: 234
Very Senior Member
|
Very Senior Member
Joined: Mar 2001
Posts: 17,215 Likes: 234 |
cojag uses a 32-bit processor. the endianness rules are different then.
|
|
|
|
Joined: Feb 2004
Posts: 55
Member
|
Member
Joined: Feb 2004
Posts: 55 |
At least in Zero Wing, it seems some weird z80 reset - 68k timing issue. I added a comment to bug 1817 which includes some differences when running on PAL or a NTSC driver.
|
|
|
|
Joined: Jan 2006
Posts: 3,691
Very Senior Member
|
Very Senior Member
Joined: Jan 2006
Posts: 3,691 |
cojag uses a 32-bit processor. the endianness rules are different then. You mean that also the M68k variant which runs area51t and a few other cojag games is completely different from the jaguar? To me, it still sounds like the jaguar in MESS hasn't been updated correctly at some point... looking at the debug, it seems the game code is now shifted back of 8 bits. I will dig into it a bit more, tonight
|
|
|
|
Joined: Mar 2001
Posts: 17,215 Likes: 234
Very Senior Member
|
Very Senior Member
Joined: Mar 2001
Posts: 17,215 Likes: 234 |
eta: in MAME 16 and 32 bit processors store memory differently, even if they're the same family and endianness in real life. It's (part of) why it's harder than it should be to make a lot of things work on big-endian hosts.
|
|
|
|
Joined: Apr 2004
Posts: 1,563 Likes: 12
Very Senior Member
|
Very Senior Member
Joined: Apr 2004
Posts: 1,563 Likes: 12 |
Yeah, clearing reset AFAIK doesn't actually run the Z80 if the bus is held, so it shouldn't start running until step 5. From what I remember that's correct, it shouldn't run unless it's got the bus, and the reset line has been cleared. In both reset high and non-bus state the z80 goes nowhere, and afaik that's how it used to behave. I have sent a patch to fix this to the mamedev mailinglist, awaiting comments...
|
|
|
|
Joined: Dec 1999
Posts: 1,180 Likes: 2
Very Senior Member
|
Very Senior Member
Joined: Dec 1999
Posts: 1,180 Likes: 2 |
|
|
|
1 members (1 invisible),
263
guests, and
1
robot. |
Key:
Admin,
Global Mod,
Mod
|
|
Forums9
Topics9,320
Posts121,923
Members5,074
|
Most Online1,283 Dec 21st, 2022
|
|
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!
|
|
|
|