Discussion:
6309 harware bug
(too old to reply)
df
2016-07-10 21:54:06 UTC
Permalink
Hi everyone,

I have found a strange behavior, when single-stepping on the 6309 in native
mode.

The MPU lockup at the instruction execution before the SYNC instruction.
The single step method used is by NMI.

eg:

nop
nop <- the mpu will hang here
sync
nop
nop


No problem at all in emulation mode. What is strange is that
the SYNC instruction is never executed.

The instruction before is partially executed,
a store instruction succeed to write its value, but for a instruction
like INC/DEC, the value written appear to be random after a RESET.
for a COM followed by a ROR/ROL the value stored is $FF.
for a CLR followed by a ROR/ROL the value is unchanged.
The 6309 enter some sort of uninterruptible loop, but can be halted with the
HALT pin.

Someone is aware of this possible hardware bug in the Hitachi 6309 ???
(the exact p/n is HD63C09EP 6J1 R)
r***@gmail.com
2017-06-21 04:06:19 UTC
Permalink
Post by df
Hi everyone,
I have found a strange behavior, when single-stepping on the 6309 in native
mode.
The MPU lockup at the instruction execution before the SYNC instruction.
The single step method used is by NMI.
nop
nop <- the mpu will hang here
sync
nop
nop
No problem at all in emulation mode. What is strange is that
the SYNC instruction is never executed.
The instruction before is partially executed,
a store instruction succeed to write its value, but for a instruction
like INC/DEC, the value written appear to be random after a RESET.
for a COM followed by a ROR/ROL the value stored is $FF.
for a CLR followed by a ROR/ROL the value is unchanged.
The 6309 enter some sort of uninterruptible loop, but can be halted with the
HALT pin.
Someone is aware of this possible hardware bug in the Hitachi 6309 ???
(the exact p/n is HD63C09EP 6J1 R)
SYNC is precisely intended to wait for an interrupt... what else were you expecting?
Loading...