Sync push
This commit is contained in:
parent
9a9de088c6
commit
b18c12b451
7 changed files with 10 additions and 4 deletions
3
.vscode/c_cpp_properties.json
vendored
3
.vscode/c_cpp_properties.json
vendored
|
|
@ -3,8 +3,7 @@
|
|||
{
|
||||
"name": "Linux",
|
||||
"includePath": [
|
||||
"${default}",
|
||||
"${workspaceRoot}/../omnia-framework/src"
|
||||
"${default}"
|
||||
],
|
||||
"defines": [],
|
||||
"compilerPath": "/usr/bin/clang++",
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -28,7 +28,7 @@ _kernel0_main:
|
|||
push $test_str
|
||||
push 1
|
||||
call $_print_string
|
||||
debug_break
|
||||
## debug_break
|
||||
|
||||
mov [$cursor_x], 0
|
||||
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@
|
|||
SCREEN_WIDTH { MemoryAddresses.CMOS + 0x0007 }
|
||||
SCREEN_HEIGHT { MemoryAddresses.CMOS + 0x0009 }
|
||||
BOOT_DISK { MemoryAddresses.CMOS + 0x0010 }
|
||||
STACK_SIZE { MemoryAddresses.CMOS + 0x0011 }
|
||||
DISK_LIST { MemoryAddresses.CMOS + 0x007E }
|
||||
@end
|
||||
## --
|
||||
|
|
|
|||
|
|
@ -15,4 +15,4 @@ printf "\n"
|
|||
|
||||
|
||||
cp dragon/disk1.dr ../extra/dragon/disk1.dr
|
||||
rm dragon/kernel0.bin
|
||||
# rm dragon/kernel0.bin
|
||||
|
|
|
|||
|
|
@ -1605,6 +1605,11 @@ namespace dragon
|
|||
int32_t Debugger::normal_runtime(bool& outUserQuit)
|
||||
{
|
||||
bool result = DragonRuntime::runStep(data().trackedAddresses);
|
||||
if (Utils::isBreakPoint((uint16_t)DragonRuntime::cpu.readRegister(data::Registers::IP)))
|
||||
{
|
||||
data().args.step_exec = true;
|
||||
return step_execution(outUserQuit, false);
|
||||
}
|
||||
bool hasError = DragonRuntime::hasError();
|
||||
bool enableStepExec = !result || hasError || Utils::isEscapeKeyPressed() || DragonRuntime::cpu.isInDebugBreakPoint();
|
||||
data().args.step_exec = enableStepExec;
|
||||
|
|
|
|||
|
|
@ -827,6 +827,7 @@ namespace dragon
|
|||
int16_t arg_data = m_memory.read16(pp_val);
|
||||
writeRegister16(data::Registers::PP, pp_val - 2);
|
||||
writeRegister16(regAddr, arg_data);
|
||||
std::cout << ostd::Utils::getHexStr(readRegister(data::Registers::IP), true, 2) << "\n";
|
||||
}
|
||||
break;
|
||||
case data::OpCodes::RetInt:
|
||||
|
|
|
|||
Loading…
Reference in a new issue