Strange issue on real HW

Pagina 4/20
1 | 2 | 3 | | 5 | 6 | 7 | 8 | 9

Van ARTRAG

Enlighted (6923)

afbeelding van ARTRAG

17-04-2015, 19:41

Daemos wrote:

If disabling _isrinit will the engine at least run?

What else of your code is located in page 0?

The engine is in the isr. Disabling the mainloop the engine should run safely

Van ARTRAG

Enlighted (6923)

afbeelding van ARTRAG

17-04-2015, 19:43

Grauw wrote:
	ei
	halt 

Does this work when interrupts are disabled? Enabling interrupt has a 1-instruction delay after all, so they will only be enabled after the halt? Either way, probably not the cause of your problems. Btw, also, no need to disable interrupts at the start of your ISR afaik (the Z80 disables them automatically).

good point. It was an attempt to change timings.
I will add a nop.

Van hit9918

Prophet (2927)

afbeelding van hit9918

17-04-2015, 20:39

@grauw,
from theory: halt got to be a "looping opcode" to keep memory refresh.
then the EI takes effect in the second loop iteration Big smile

so then
EI
LDIR
doesn't block things for the whole duration of the ldir.

Van hit9918

Prophet (2927)

afbeelding van hit9918

17-04-2015, 20:54

with 60hz the stack is overflowing.
which the EI RET interrupt normaly can't do.

Van Daemos

Paragon (2044)

afbeelding van Daemos

17-04-2015, 21:22

Ok finally weekend!!! artrag which compiler do you use to compile your source code. I want to take a deeper look at the problem by compiling and debugging.

Van Grauw

Ascended (10699)

afbeelding van Grauw

17-04-2015, 21:27

@hit9918 I used to think that too, but on the openMSX channel we tested this a while ago, and HALT does not loop like LDIR & co., rather it suspends the instruction fetch and actually does go into a low-activity state.

Van Daemos

Paragon (2044)

afbeelding van Daemos

17-04-2015, 21:33

according to my little Z80 handbook the Z80 keeps executing nop instructions until a interrupt is detected. Does this mean that the handbook requires to be corrected?

Van Grauw

Ascended (10699)

afbeelding van Grauw

17-04-2015, 21:36

That may be correct, no instructions are fetched but it may be putting NOP on the internal bus of course. Whether that means EI : HALT works is easy to test of course.

Van Daemos

Paragon (2044)

afbeelding van Daemos

17-04-2015, 21:38

Quote:

Whether that means EI : HALT works is easy to test of course.

works in openMSX. Will test on real HW this weekend.

Van hit9918

Prophet (2927)

afbeelding van hit9918

17-04-2015, 22:11

dont forget to test IM2! Smile
who knows.

Pagina 4/20
1 | 2 | 3 | | 5 | 6 | 7 | 8 | 9