forum speccy.pl
ZX Spectrum => HARDWARE => Wątek zaczęty przez: steev w 2022.02.05, 10:39:19
-
Gdyby ktoś chciał zerknąć lub potrzebował skorzystać :
podstawowe sygnały wewnątrz ULA, emulowane ze źródła z OpenCores.
Cały stuff związany z contended memoty został z rozmysłem zignorowany :)
Przy 'odczycie' danych z VRAM, na szynę danych podawane jest {va[8],va[6:0]}^8'h0f
-
Fajne :) i dzięki.
W tych źródłach są dwa drobne błędy przy generowaniu /INT:
// INT generation
reg INT_n = 1;
assign msk_int_n = INT_n;
always @(negedge clk7) begin
if (`cyclestart(vc,248) && `cyclestart(hc,0))
INT_n <= 0;
else if (`cyclestart(vc,248) && `cycleend(hc,31))
INT_n <= 1;
end
Poprawnie ustawione liczniki:
// INT generation
reg INT_n = 1;
assign msk_int_n = INT_n;
always @(negedge clk7) begin
if (`cyclestart(vc,248) && `cyclestart(hc,2))
INT_n <= 0;
else if (`cyclestart(vc,248) && `cycleend(hc,65))
INT_n <= 1;
end
-
I weź tu zaufaj źródłom, do których wszyscy się odnoszą ;)
Dzięki.
Przebiegi z 32T przerwaniem w załączniku.