| 追加情報 | According to the game code, this is not a bug. - stephh, 0.109u2
According to the game code, this is not a bug :
Code:
0E5D1: 8A 1E 28 05 mov bl,byte ptr [528h]
0E5D5: 3A 1E 34 05 cmp bl,byte ptr [534h]
0E5D9: 75 09 jne 0E5E4h
0E5DB: 80 FB 02 cmp bl,2h
0E5DE: 76 0E jbe 0E5EEh
0E5E0: B3 02 mov bl,2h
0E5E2: EB 02 jmp 0E5E6h
0E5E4: 32 DB xor bl,bl
0E5E6: 88 1E 28 05 mov byte ptr [528h],bl
0E5EA: 88 1E 34 05 mov byte ptr [534h],bl
0E5EE: A0 29 05 mov al,[529h]
This means that if you have 2 credits or less in NVRAM, nothing is changed when you launch or reset the game; and if you have more than 2 credits, this number of credits will be changed to 2 ...
Now the question is why there are more than 2 credits the first time you launch the game ... This is because the NVRAM handler defaults all values to 0xff when the .nv file doesn't exist :
Code:
static MACHINE_DRIVER_START( gottlieb )
...
MDRV_NVRAM_HANDLER(generic_1fill)
...
MACHINE_DRIVER_END
Can this be told a bug ? I don't have the reply here ...
Note that the behaviour is the same with the clone 'mplanuk' (even if the addresses are slightly different) :
Code:
0E5D1: 8A 1E 28 05 mov bl,byte ptr [528h]
0E5D5: 3A 1E 3E 05 cmp bl,byte ptr [53Eh]
0E5D9: 75 09 jne 0E5E4h
0E5DB: 80 FB 02 cmp bl,2h
0E5DE: 76 0E jbe 0E5EEh
0E5E0: B3 02 mov bl,2h
0E5E2: EB 02 jmp 0E5E6h
0E5E4: 32 DB xor bl,bl
0E5E6: 88 1E 28 05 mov byte ptr [528h],bl
0E5EA: 88 1E 3E 05 mov byte ptr [53Eh],bl
0E5EE: A0 29 05 mov al,[529h]
|