aboutsummaryrefslogtreecommitdiff
path: root/src-68k/echo.68k
diff options
context:
space:
mode:
Diffstat (limited to 'src-68k/echo.68k')
-rw-r--r--src-68k/echo.68k9
1 files changed, 3 insertions, 6 deletions
diff --git a/src-68k/echo.68k b/src-68k/echo.68k
index 19844fe..8810ab2 100644
--- a/src-68k/echo.68k
+++ b/src-68k/echo.68k
@@ -41,6 +41,7 @@ Echo_Z80Reset macro
Echo_SendCommand:
movem.l d1/a1, -(sp) ; Save registers
+@Try:
Echo_Z80Request ; We need the Z80 bus
lea ($A01FFF), a1 ; First try the 1st slot
@@ -48,13 +49,11 @@ Echo_SendCommand:
beq.s @Ready ; If so, move on
subq.l #4, a1 ; Try 2nd slot otherwise
-@Try:
tst.b (a1) ; Check if 2nd slot is ready
beq.s @Ready ; Too busy?
Echo_Z80Release ; Let Echo continue
move.w #$FF, d1 ; Give it some time
dbf d1, * ; ...
- Echo_Z80Request ; Get Z80 bus back
bra.s @Try ; Try again
@Ready:
@@ -75,6 +74,7 @@ Echo_SendCommand:
Echo_SendCommandAddr:
Echo_SendCommandEx:
movem.l d0-d1/a1, -(sp) ; Save registers
+@Try:
Echo_Z80Request ; We need the Z80 bus
lea ($A01FFF), a1 ; First try the 1st slot
@@ -82,13 +82,11 @@ Echo_SendCommandEx:
beq.s @Ready ; If so, move on
subq.l #4, a1 ; Try 2nd slot otherwise
-@Try:
tst.b (a1) ; Check if 2nd slot is ready
beq.s @Ready ; Too busy?
Echo_Z80Release ; Let Echo continue
move.w #$FF, d1 ; Give it some time
dbf d1, * ; ...
- Echo_Z80Request ; Get Z80 bus back
bra.s @Try ; Try again
@Ready:
@@ -126,18 +124,17 @@ Echo_SendCommandByte:
movem.l d1-d2/a1, -(sp) ; Save registers
Echo_Z80Request ; We need the Z80 bus
+@Try:
lea ($A01FFF), a1 ; First try the 1st slot
tst.b (a1) ; Is 1st slot available?
beq.s @Ready ; If so, move on
subq.l #4, a1 ; Try 2nd slot otherwise
-@Try:
tst.b (a1) ; Check if 2nd slot is ready
beq.s @Ready ; Too busy?
Echo_Z80Release ; Let Echo continue
move.w #$FF, d2 ; Give it some time
dbf d2, * ; ...
- Echo_Z80Request ; Get Z80 bus back
bra.s @Try ; Try again
@Ready: