- Afegim el tap i el savestate de Alien 8 per a provar
- Provant el berserk mode - Medint els t-states de altra forma - iff1, iff2 i im afegits al array de registres de la cpu - [NEW] getRegs() del modul z80 - [NEW] loadstate() i savestate() al modul z80debug - [NEW] "load arxiu" i "save arxiu" en consola per a carregar i guardar savestates - [ONGOING] "tape load arxiu" i "tape play" per a canviar de cinta i playarla - Buffer de audio més gran. Ara el buffer es circular. Continuem intentant desfer-se del jittering
This commit is contained in:
16
main.cpp
16
main.cpp
@@ -28,7 +28,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
zx_ula::sound_init();
|
||||
|
||||
zx_tape::load("abusimbel.tap");
|
||||
zx_tape::load("alien8.tap");
|
||||
|
||||
if (argc==3) { z80debug::loadngo(argv[1], argv[2]); }
|
||||
|
||||
@@ -80,6 +80,7 @@ int main(int argc, char *argv[])
|
||||
zxscreen::redraw();
|
||||
}
|
||||
if (e.key.keysym.scancode==SDL_SCANCODE_F12) {
|
||||
zx_tape::go_berserk();
|
||||
zx_tape::play();
|
||||
}
|
||||
if (e.key.keysym.scancode==SDL_SCANCODE_F11) {
|
||||
@@ -98,11 +99,22 @@ int main(int argc, char *argv[])
|
||||
uint8_t dt = z80::step();
|
||||
t_states += dt;
|
||||
zx_tape::update(dt);
|
||||
|
||||
while (zx_tape::berserk())
|
||||
{
|
||||
zx_tape::update(z80::step());
|
||||
}
|
||||
|
||||
zx_ula::sound_update(dt);
|
||||
zxscreen::refresh(dt);
|
||||
|
||||
if (t_states>=350000)
|
||||
if (t_states>=3500000)
|
||||
{
|
||||
//if (SDL_GetTicks()>=time+1000)
|
||||
//printf("%i\n", SDL_GetTicks()-(time+1000));
|
||||
//else
|
||||
// printf("%i\n", SDL_GetTicks()-(time+1000));
|
||||
//t_states = 0;
|
||||
while (SDL_GetTicks()<time+100) {}
|
||||
t_states -= 350000;
|
||||
time = SDL_GetTicks();
|
||||
|
||||
Reference in New Issue
Block a user