Strange issue on real HW

ページ 4/20
1 | 2 | 3 | | 5 | 6 | 7 | 8 | 9

By ARTRAG

Enlighted (6923)

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

By ARTRAG

Enlighted (6923)

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.

By hit9918

Prophet (2927)

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.

By hit9918

Prophet (2927)

hit9918 さんの画像

17-04-2015, 20:54

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

By Daemos

Paragon (2044)

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.

By Grauw

Ascended (10699)

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.

By Daemos

Paragon (2044)

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?

By Grauw

Ascended (10699)

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.

By Daemos

Paragon (2044)

Daemos さんの画像

17-04-2015, 21:38

引用:

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

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

By hit9918

Prophet (2927)

hit9918 さんの画像

17-04-2015, 22:11

dont forget to test IM2! Smile
who knows.

ページ 4/20
1 | 2 | 3 | | 5 | 6 | 7 | 8 | 9