-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathreadme.txt
207 lines (149 loc) · 4.95 KB
/
readme.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
This is a collection of test programs, primarily used for the VICE project, but
useful for other commodore emulators too.
--------------------------------------------------------------------------------
Note: all scripts will, by default, assume that:
a) both the VICE "trunk" and "testprogs" repositories were checked out into the
same parent and using the names "trunk" and "testprogs", so you will have a
directory structure like:
foo/trunk
foo/testprogs
b) VICE was configured to be built in-tree and was compiled already, so the
binaries can be found in foo/trunk/src/
This allows the tests to easily operate on WIP builds without the need to set
up anything.
However, you can usually override this by setting EMUDIR to the path the
binaries can be located in.
--------------------------------------------------------------------------------
In the root directory you will find the following files and directories:
readme.txt this text
Makefile the toplevel (simple) interface to all tests
$ make
available targets:
petcat test 'petcat'
c1541 test 'c1541'
cartconv test 'cartconv'
vice-autostart autostart tests
vice-monitor test ml-monitor
vice-remotemonitor test remote monitor protocol
vice all vice- tests
testbench run the emulation testbench
runtests do all of the above
If you want to run individual (emulation-) tests, use the testbench.sh script
in the testbench directory.
* VICE tools
./c1541
./cartconv
./petcat
* VICE features
testbench/autostart
Monitor
remotemonitor
* Emulator testbench
./testbench contains the testbench scripts. see the readme.txt in this directory
for instructions on how to do automated testing.
* Target test programs
All other directories contain programs that run on the target computer (or the
emulator, obviously) and tests various aspects of the emulation:
./general - tests that do not fit into any other categories, usually
combined tests
* tests related to the various emulated chips
./CPU
./CIA
./SID
./VICII
./VDC - VDC related, these run on C128
./TED - TED related, these run on Plus4
./CRTC - CRTC related, these run on PET
* tests specifically related to the various commodore computers
./C64 - specific C64 related tests
./interrupts
./c64-cpm
./c128
./c128-cpm
./DTV
./VIC20
./CBM2
./PET
./Plus4
./SCPU
./drive - floppy drive tests
./vsid
* expansions
./memory-expansions
./plus256k
./plus60k
./ramcart
./GEO-RAM
./REU
./mouse
./propmouse
./audio-io
./digimax
./sfx_soundexpander
./sfx_soundsampler
./RTC
./cp-clockf83
./userportrtc
./joystick
./keypad
./testjoy
./userportsnes
* VICE subsystems
./crtemulation
./printer
./vdrive
./RS232
./MIDI
--------------------------------------------------------------------------------
TODO: the long term goal is to have some tests for everything that is emulated
by VICE. still a long way to go, this is what might be missing:
* some existing tests are missing proper source code
VIC20/vic6581
VDC/40columns
DTV/tsuitDTV
* tests related to the various emulated chips
6510
----
- add more elaborated SHA/SHY/SHX page-boundary crossing tests
ACIA
----
CRTC
----
SID
---
- make test to check the POTX/Y sample period
- make envelope generator timing test (like waveform check)
- make test to check noise LFSR behavior on reset / test bit (it should take
about 0x8000 cycles until it resets)
- make test to check correct noise LFSR sequence (like waveform check?)
- make proper test for "new" waveforms created by selecting noise with other
waveforms (the regular waveform should get ANDed into the LFSR)
VIA
---
- make test program for power-on values
- make VIA shiftregister test program
VIC-II
------
- make test to check that the correct value is fetched for the "FLI-bug" area
- make more detailed sprite-collision timing test(s)
- make sprite-stretch test (cl13 plasma)
* tests specifically related to the various commodore computers
C64, C128, VIC20, PET, PLUS4, CBM2 ...
* tests specifically related to drives
1541:
-----
- make test program that measures mechanical delays (such as stepping)
- make a test program to check half tracks
- make a testcase for the case when V flag is set by "byte ready" and it is
modified by an opcode at the same time. (ARR?)
- make test program to check various track lengths (in a g64)
- make test program to check various speed zones (in a g64)
vdrive
------
- add tests for directory wildcard handling, still some bugs: multiple wildcards
aren't supported (eg "$:A*,B*") (#614)
- add tests for various CBMDOS commands
* expansions
super snapshot v5:
------------------
- make test for using SSV5+REU