Mercurial > repos > blastem
comparison sms.c @ 2179:9a8dd4ba2753
Implement frame advance debugger command
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 13 Aug 2022 19:37:17 -0700 |
parents | 9caebcfeac72 |
children | 01ff005b08f6 |
comparison
equal
deleted
inserted
replaced
2178:f6d5bde4d07f | 2179:9a8dd4ba2753 |
---|---|
383 { | 383 { |
384 if (system->delayed_load_slot) { | 384 if (system->delayed_load_slot) { |
385 load_state(system, system->delayed_load_slot - 1); | 385 load_state(system, system->delayed_load_slot - 1); |
386 system->delayed_load_slot = 0; | 386 system->delayed_load_slot = 0; |
387 | 387 |
388 } | |
389 if (sms->vdp->frame != sms->last_frame) { | |
390 uint32_t elapsed = sms->vdp->frame - sms->last_frame; | |
391 sms->last_frame = sms->vdp->frame; | |
392 if (system->enter_debugger_frames) { | |
393 if (elapsed >= system->enter_debugger_frames) { | |
394 system->enter_debugger_frames = 0; | |
395 system->enter_debugger = 1; | |
396 } else { | |
397 system->enter_debugger_frames -= elapsed; | |
398 } | |
399 } | |
400 | |
401 if(exit_after){ | |
402 if (elapsed >= exit_after) { | |
403 exit(0); | |
404 } else { | |
405 exit_after -= elapsed; | |
406 } | |
407 } | |
388 } | 408 } |
389 if (system->enter_debugger && sms->z80->pc) { | 409 if (system->enter_debugger && sms->z80->pc) { |
390 system->enter_debugger = 0; | 410 system->enter_debugger = 0; |
391 zdebugger(sms->z80, sms->z80->pc); | 411 zdebugger(sms->z80, sms->z80->pc); |
392 } | 412 } |