OpenCores
URL https://opencores.org/ocsvn/a-z80/a-z80/trunk

Subversion Repositories a-z80

[/] [a-z80/] [trunk/] [cpu/] [toplevel/] [fuse/] [README] - Blame information for rev 3

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 gdevic
These files are part of the Fuse emulator Z80 test vectors:
2
http://fuse-emulator.sourceforge.net/
3
 
4
File formats
5
============
6
 
7
tests.in
8
--------
9
 
10
Each test has the format:
11
 
12
13
AF BC DE HL AF' BC' DE' HL' IX IY SP PC
14
I R IFF1 IFF2 IM  
15
 
16
 specifies whether the Z80 is halted.
17
 specifies the number of tstates to run the test for, in
18
  decimal; the number actually executed may be higher, as the final
19
  instruction is allowed to complete.
20
 
21
Then followed by lines specifying the initial memory setup. Each has
22
the format:
23
 
24
   ... -1
25
 
26
eg
27
 
28
1234 56 78 9a -1
29
 
30
says to put 0x56 at 0x1234, 0x78 at 0x1235 and 0x9a at 0x1236.
31
 
32
Finally, -1 to end the test. Blank lines may follow before the next test.
33
 
34
tests.expected
35
--------------
36
 
37
Each test output starts with the test description, followed by a list
38
of 'events': each has the format
39
 
40
41
 
42
43
 is one of MR (memory read), MW (memory write), MC (memory
44
       contend), PR (port read), PW (port write) or PC (port contend).
45
is the address (or IO port) affected.
46
 is the byte written or read. Missing for contentions.
47
 
48
After that, lines specifying AF, BC etc as for .in files. 
49
now specifies the final time.
50
 
51
After that, lines specifying which bits of memory have changed since
52
the initial setup. Same format as for .in files.
53
 
54
Why some specific tests are here
55
================================
56
 
57
37_{1,2,3}: check the behaviour of SCF with respect to bits 3 and 5
58
            (bug fixed on 20040225).
59
 
60
cb{4,5,6,7}{7,f}_1: designed to check that bits 3 and 5 are copied to
61
                    F only for BIT 3, and BIT 5, respectively
62
                    (bug fixed on 20040225).
63
 
64
                    However, later research has revealed the bits 3
65
                    and 5 are copied on all BIT instructions, so these
66
                    tests are now essentially redundant.
67
 
68
d{3,b}_{1,2,3}: check for correct port contention on IO in the four
69
                relevant states (port high byte in 0x40 to 0x7f or not,
70
                port low bit set or reset).
71
 
72
dd00.in, ddfd00.in: test timings of "extended NOP" opcodes DD 00 and
73
                    DD FD 00; the extra 00 at the end is to check the
74
                    next opcode executes at the right time (bug fixed
75
                    on 20060722).
76
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.