Previous Thread
Next Thread
Print Thread
Page 23 of 536 1 2 21 22 23 24 25 535 536
Joined: Apr 2004
Posts: 1,555
J
Very Senior Member
Online Content
Very Senior Member
J
Joined: Apr 2004
Posts: 1,555
What Zero Wing seems to do is:
Code:
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: 16,757
Likes: 29
R
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,757
Likes: 29
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,671
H
Very Senior Member
Offline
Very Senior Member
H
Joined: May 2004
Posts: 1,671
Originally Posted By R. Belmont
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,690
Very Senior Member
Offline
Very Senior Member
Joined: Jan 2006
Posts: 3,690
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: 16,757
Likes: 29
R
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,757
Likes: 29
cojag uses a 32-bit processor. the endianness rules are different then.

Joined: Feb 2004
Posts: 55
E
Member
Offline
Member
E
Joined: Feb 2004
Posts: 55
Originally Posted By judge
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,690
Very Senior Member
Offline
Very Senior Member
Joined: Jan 2006
Posts: 3,690
Originally Posted By R. Belmont
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: 16,757
Likes: 29
R
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,757
Likes: 29
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,555
J
Very Senior Member
Online Content
Very Senior Member
J
Joined: Apr 2004
Posts: 1,555
Originally Posted By Haze
Originally Posted By R. Belmont
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,176
J
Very Senior Member
Offline
Very Senior Member
J
Joined: Dec 1999
Posts: 1,176

Page 23 of 536 1 2 21 22 23 24 25 535 536

Link Copied to Clipboard
Who's Online Now
0 members (), 31 guests, and 3 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics8,943
Posts117,565
Members4,994
Most Online890
Jan 17th, 2020
Forum Host
These forums are hosted by www.retrogamesformac.com
Forum hosted by www.retrogamesformac.com