File tree Expand file tree Collapse file tree 2 files changed +16
-6
lines changed Expand file tree Collapse file tree 2 files changed +16
-6
lines changed Original file line number Diff line number Diff line change @@ -259,7 +259,7 @@ module ci2406_z80(
259
259
.wr_n (io_out[ 3 ]),
260
260
.rfsh_n (io_out[ 5 ]),
261
261
262
- .early_signals(custom_settings[ 0 ] )
262
+ .early_signals(custom_settings)
263
263
);
264
264
endmodule
265
265
@@ -286,7 +286,7 @@ module z80 (
286
286
output wire halt_n,
287
287
output wire busak_n,
288
288
289
- input wire early_signals
289
+ input wire [ 1 : 0 ] early_signals
290
290
);
291
291
292
292
wire normal_mreq_n;
@@ -299,10 +299,19 @@ module z80 (
299
299
wire early_rd_n;
300
300
wire early_wr_n;
301
301
302
- assign mreq_n = early_signals ? early_mreq_n : normal_mreq_n;
303
- assign iorq_n = early_signals ? early_iorq_n : normal_iorq_n;
304
- assign rd_n = early_signals ? early_rd_n : normal_rd_n;
305
- assign wr_n = early_signals ? early_wr_n : normal_wr_n;
302
+ // assign mreq_n = early_signals ? early_mreq_n : normal_mreq_n;
303
+ // assign iorq_n = early_signals ? early_iorq_n : normal_iorq_n;
304
+ // assign rd_n = early_signals ? early_rd_n : normal_rd_n;
305
+ // assign wr_n = early_signals ? early_wr_n : normal_wr_n;
306
+
307
+ assign mreq_n = early_signals[1 ] ?
308
+ (rfsh_n ? (early_mreq_n & normal_mreq_n) : early_mreq_n) :
309
+ early_signals[0 ] ? early_mreq_n : normal_mreq_n;
310
+
311
+ assign iorq_n = early_signals[1 ] ? (early_iorq_n & normal_iorq_n) :
312
+ early_signals[0 ] ? early_iorq_n : normal_iorq_n;
313
+ assign rd_n = early_signals[0 ] ? early_rd_n : normal_rd_n;
314
+ assign wr_n = normal_wr_n;
306
315
307
316
tv80s #(
308
317
.Mode(0 ), // Z80 mode
Original file line number Diff line number Diff line change @@ -18,6 +18,7 @@ async def test__RESET(dut):
18
18
dut ._log .info ("Test RESET sequence" )
19
19
dut ._log .info ("Reset" )
20
20
dut .io_in .value = 0
21
+ dut .custom_settings .value = 0b00 # [long MREQ+IORQ, early RD+MREW+IORQ] WR always normal
21
22
dut .rst_n .value = 0
22
23
await ClockCycles (dut .clk , 2 )
23
24
for z80_cycle in range (- 4 , 2 ):
You can’t perform that action at this time.
0 commit comments