3041
edycji
Nie podano opisu zmian |
|||
Linia 1: | Linia 1: | ||
__NOTOC__ | __NOTOC__ | ||
=== 3 października 2012 === | |||
Emulator ma już funkcjonalny, podstawowy debuger. Przykład użycia: | |||
Pokazanie zawartości rejestrów procesora (rejestr zgłoszeń przerwań pokazuje przerwanie timera): | |||
em400 [0 00 0x0000]> regs | |||
iiiiiiDAAABBBCCC RM________QBNB__ | |||
IR: 0x0000 0000000000000000 SR: 0x0000 0000000000000000 | |||
IC: 0x0000 P: 0 | |||
01234567012345670123456701234567 ZMVCLEGYX....... | |||
RZ: 00000100000000000000000000000000 R0: 0000000000000000 | |||
hex... dec... bin.....|....... hex... dec... bin.....|....... | |||
R00: 0x0000 0 0000000000000000 R01: 0x0000 0 0000000000000000 | |||
R02: 0x0000 0 0000000000000000 R03: 0x0000 0 0000000000000000 | |||
R04: 0x0000 0 0000000000000000 R05: 0x0000 0 0000000000000000 | |||
R06: 0x0000 0 0000000000000000 R07: 0x0000 0 0000000000000000 | |||
R08: 0x0000 0 0000000000000000 R09: 0x0000 0 0000000000000000 | |||
R10: 0x0000 0 0000000000000000 R11: 0x0000 0 0000000000000000 | |||
R12: 0x0000 0 0000000000000000 R13: 0x0000 0 0000000000000000 | |||
R14: 0x0000 0 0000000000000000 R15: 0x0000 0 0000000000000000 | |||
Deassemblacja trzech kolejnych rozkazów, od bieżącej pozycji IC: | |||
em400 [0 00 0x0000]> dasm 3 | |||
0x0000: (2) LWI r1, 16 | |||
0x0002: (2) AWI r1, 17 | |||
0x0004: (2) RWD r1, 18 | |||
Wyświetlenie zawartości pamięci pod adresami 16 do 17: | |||
em400 [0 00 0x0000]> mem 0 0x10 0x12 | |||
addr: +000 +001 +002 +003 +004 +005 +006 +007 +008 +009 +00a +00b +00c +00d +00e +00f | |||
0x0010: 202 202 15 ...... | |||
Wykonanie trzech kolejnych instrukcji: | |||
em400 [0 00 0x0000]> step | |||
em400 [0 00 0x0002]> step | |||
em400 [0 00 0x0004]> step | |||
Ponowne pokazanie zawartości pamięci: | |||
em400 [0 00 0x0006]> mem 0 0x10 0x12 | |||
addr: +000 +001 +002 +003 +004 +005 +006 +007 +008 +009 +00a +00b +00c +00d +00e +00f | |||
0x0010: 202 202 404 ...... | |||
Deasemblacja kolejnego (nieprawidłowego) rozkazu i próba jego wykonania: | |||
em400 [0 00 0x0006]> dasm | |||
0x0006: (1) ILLEGAL: 0x0002 (dec: 2, bin: 0000000000000010) | |||
em400 [0 00 0x0006]> step | |||
Wyświetlenie zawartości rejestrów (rejestr zgłoszeń przerwań pokazuje przerwanie generowane przy próbie wykonania niewłaściwiej instrukcji): | |||
em400 [0 00 0x0007]> regs | |||
iiiiiiDAAABBBCCC RM________QBNB__ | |||
IR: 0x0002 0000000000000010 SR: 0x0000 0000000000000000 | |||
IC: 0x0007 P: 0 | |||
01234567012345670123456701234567 ZMVCLEGYX....... | |||
RZ: 00000110000000000000000000000000 R0: 0000000000000000 | |||
hex... dec... bin.....|....... hex... dec... bin.....|....... | |||
R00: 0x0000 0 0000000000000000 R01: 0x0404 1028 0000010000000100 | |||
R02: 0x0000 0 0000000000000000 R03: 0x0000 0 0000000000000000 | |||
R04: 0x0000 0 0000000000000000 R05: 0x0000 0 0000000000000000 | |||
R06: 0x0000 0 0000000000000000 R07: 0x0000 0 0000000000000000 | |||
R08: 0x0000 0 0000000000000000 R09: 0x0000 0 0000000000000000 | |||
R10: 0x0000 0 0000000000000000 R11: 0x0000 0 0000000000000000 | |||
R12: 0x0000 0 0000000000000000 R13: 0x0000 0 0000000000000000 | |||
R14: 0x0000 0 0000000000000000 R15: 0x0000 0 0000000000000000 | |||
em400 [0 00 0x0007]> | |||
=== 4 września 2012 === | === 4 września 2012 === |