more tests
[megadrive.git] / testpico / z80_test.s80
index 0030ff7..824d80c 100644 (file)
@@ -10,21 +10,32 @@ loop
   or  a            ;       4
   jp  z, loop      ;      10  27 (41 worst)
 
-  ld  bc, ($1002)  ; src  20
-  ld  de, ($1004)  ; dst  20  67
-  ld  a, ($1001)   ; len  13
-  ld  h, a         ;       4  84 (98)
-loop_cp
-  ld  a, (bc)      ;       7
+  ld  hl, ($1002)  ; src  20
+  ld  de, ($1004)  ; dst  20
+  ld  bc, ($1006)  ; len  20
+
+  cp  a, 2         ;       7
+  jp  z, rd_timing ;      10  77 (118)
+
+  ldir             ;      21/16
+  jp  end          ;      10
+
+rd_timing
+  ld  d, h         ;       4
+  ld  e, l         ;       4
+  inc de           ;       6  14 (132)
+loop_read
+  ld  a, (hl)      ;       7
+  ld  a, (de)      ;       7
+  dec bc           ;       6
+  ld  a, b         ;       4
+  or  a, c         ;       4
+  jp  nz,loop_read ;      10  38
+
+  ld  a, ($7f08)   ; vcnt 13
+  ld  de, ($1004)  ; dst  20
   ld  (de), a      ;       7
-  inc bc           ;       6
-  inc de           ;       6
-  dec h            ;       4  30
-  jp  nz, loop_cp  ;      10  40
-
-  xor a            ;       4
-  ld  ($1000), a   ;      13
-  jp  loop         ;      10  27
+  jp  end          ;      10  50
 
 ; ---
 
@@ -33,3 +44,10 @@ loop_cp
 irq
   ret
 
+; ---
+
+end
+  xor a            ;       4
+  ld  ($1000), a   ;      13
+  jp  loop         ;      10  27
+