Welcome, Guest. Please login or register.

Author Topic: What does guru number 8000 0020 mean?  (Read 2854 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: What does guru number 8000 0020 mean?
« on: February 13, 2007, 10:49:37 AM »
"trap #0" instruction executed.
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: What does guru number 8000 0020 mean?
« Reply #1 on: February 14, 2007, 05:26:07 AM »
@gazsp
Quote
This means that TRAP #0 has been executed by the processor, right?

Correct.
Quote
So why would this instruction occur in a game for example?

Typically old (A500 era) games would use this to get into supervisor mode. There's some nice exec/Supervisor call for that, but I guess the coders didn't know about it back then.

Quote
I'm trying to run a game on an 040 but I just get this guru every time it starts.

Most likely the game in question pokes vector table without knowlege about the vector base register (VBR). Basically it pokes the vector to wrong address and thus trap #0 will not give supervisor, but rather crash.

Enforcing the VBR back to address 0 might help (or booting without startup-sequence).

However, if the game is using trap #0 tricks, then it might also fail on anything higher than 68000 in general (abusing stackframes etc). In these cases the only way to run it is to use WHDLoad.
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: What does guru number 8000 0020 mean?
« Reply #2 on: February 14, 2007, 05:28:15 AM »
@Wol
Quote
Perhaps the 040 has found an Instruction it does not understand

Trap #0 works just fine on 040.

Quote
Make sure you have the latest 040.library installed on you system, also try cyberpatcher or oxypathcer.

Actually it likely works better without 040 library (that is without setpatch).