Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-24 Thread Alex Wulms
] >On the MSX interrupts the interrupt ends with a EI:RET. (No RETI, it has no ] >use). ] ] But it has a reason I forgot. What's the actual effect of RETI? What are ] the differences with an EI/RET? And with an EI/RETI? It is mainly a feature for hardwaredevelopers that use the Z80 as a microcon

Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-23 Thread Maarten ter Huurne
At 09:17 PM 7/22/99 +0200, you wrote: >Example: You have an interrupt which during the interruptroutine. At the end >this results in one extra word on the stack, and the interrupt will be >restarted. But if the interrupt once again occurs during the >interruptroutine you'll get 2 words on the sta

Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-22 Thread Laurens Holst
> >The reason why EI enabled the interrupt 1 instruction later had indeed to do > >with the interrupt. If you let the interrupt end with EI:RET then the > >interrupts will be enabled AFTER the RET, hence preventing a stack overload > >when the interrupt-routines occasionally takes too long and can

Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-22 Thread Laurens Holst
> >On the MSX interrupts the interrupt ends with a EI:RET. (No RETI, it has no > >use). > > But it has a reason I forgot. What's the actual effect of RETI? What are > the differences with an EI/RET? And with an EI/RETI? Well according to the documentation the purpose of RETI is so interrupt-gener

Re: Accessing disk with disabled interrupts

1999-07-22 Thread Laurens Holst
> >Keep in mind that when executing an EI the interrupts will be enabled after > >the next instruction. So this is the way to keep the interrupts disabled as > >short as possible, which is always preferred (although not required). > > I just wondered... Does DI have this behaviour as well? If so,

Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-22 Thread Ricardo Bittencourt Vidigal Leitao
On Thu, 22 Jul 1999, MkII wrote: > But it has a reason I forgot. What's the actual effect of RETI? RETI is the same thing as RET, only with a different opcode. Some Z80-based devices can detect the opcode of RETI when it's on the data bus, and by doing this they can know when i

Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-22 Thread Maarten ter Huurne
At 04:59 PM 7/21/99 +0200, you wrote: >The reason why EI enabled the interrupt 1 instruction later had indeed to do >with the interrupt. If you let the interrupt end with EI:RET then the >interrupts will be enabled AFTER the RET, hence preventing a stack overload >when the interrupt-routines occa

Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-22 Thread MkII
>On the MSX interrupts the interrupt ends with a EI:RET. (No RETI, it has no >use). But it has a reason I forgot. What's the actual effect of RETI? What are the differences with an EI/RET? And with an EI/RETI? MARK 2 MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTEC

Re: Accessing disk with disabled interrupts

1999-07-21 Thread Maarten ter Huurne
At 09:11 PM 7/20/99 +0200, you wrote: >Like this: >LD A,value >DI >OUT (#99),a >LD A,register+128 >EI >OUT (#99),a > >Keep in mind that when executing an EI the interrupts will be enabled after >the next instruction. So this is the way to keep the interrupts disabled as >short as possible, which

Re: EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-21 Thread Laurens Holst
> >Keep in mind that when executing an EI the interrupts will be enabled after > >the next instruction. So this is the way to keep the interrupts disabled as > >short as possible, which is always preferred (although not required). > > Nice tip. This reminds me of the EI/RETI pair back in the ZX er

EI/RETI (was Re: Accessing disk with disabled interrupts)

1999-07-20 Thread MkII
>> Should I disable interrupts accessing the VDP register directly? > >Yes. > >Like this: >LD A,value >DI >OUT (#99),a >LD A,register+128 >EI >OUT (#99),a > >Keep in mind that when executing an EI the interrupts will be enabled after >the next instruction. So this is the way to keep the interrupts

Re: Accessing disk with disabled interrupts

1999-07-20 Thread Maarten ter Huurne
At 03:56 AM 7/20/99 +0200, you wrote: >Is it possible to execute BDOS / Disk BASIC disk operation with interrupts >disabled? Yes. >Do those functions embed EIs? Yes. >Should I disable interrupts accessing the VDP register directly? You don't have to, but it does solve the F700 slowdown. Or

Re: Accessing disk with disabled interrupts

1999-07-20 Thread Laurens Holst
> Is it possible to execute BDOS / Disk BASIC disk operation with interrupts > disabled? Errm... It surely is possible I'm not sure if they keep the interrupts disabled. Actually, I think they re-enable them afterwards. > Do those functions embed EIs? ??? I guess so. > Should I disable inter

Accessing disk with disabled interrupts

1999-07-20 Thread MkII
Is it possible to execute BDOS / Disk BASIC disk operation with interrupts disabled? Do those functions embed EIs? Should I disable interrupts accessing the VDP register directly? Is it legal to call 256 times #FD9F with interrupts disabled at VDP level? Is it legal to tell Disk ROM to stop th