Difference between revisions of "Debug device"
From MSX Game Library
(→Debug device protocol) |
|||
| Line 4: | Line 4: | ||
== Debug device protocol == | == Debug device protocol == | ||
| − | The additions are | + | The additions are marked wIth ##. This proposal is 100% compatible with the old one if unused bits was set to 0. |
| − | + | <syntaxhighlight lang="txt"> | |
| − | + | ----------------------------------------------------------------------------- | |
| − | + | Port 0x2E - Mode Set Register | |
| − | + | ----------------------------------------------------------------------------- | |
| − | + | 7 6 5 4 3 2 1 0 | |
| − | + | │ │ │ │ └───┴───┴───┴── Mode-specific parameters | |
| − | + | │ │ └───┴────────────────── Output mode (0 = OFF, 1 = single byte, 2 = multi byte) | |
| − | + | │ └────────────────────────── Line feed mode (0 = line feed at mode change, 1 = no line feed) | |
| + | └────────────────────────────── ## Functionality (0 = output, 1 = command) | ||
| − | + | ----------------------------------------------------------------------------- | |
| − | + | Functionality = output, Output mode = single byte | |
| − | + | ----------------------------------------------------------------------------- | |
| − | + | 7 6 5 4 3 2 1 0 | |
| − | + | ‖ ‖ ‖ ‖ │ │ │ └── Hexadecimal mode (0 = OFF, 1 = ON) | |
| − | + | 0 ? 0 1 │ │ └────── Binary mode (0 = OFF, 1 = ON) | |
| − | + | │ └────────── Decimal mode (0 = OFF, 1 = ON) | |
| − | + | └────────────── ASCII mode (0 = OFF, 1 = ON) | |
| − | + | ----------------------------------------------------------------------------- | |
| − | + | Functionality = output, Output mode = multi byte | |
| − | + | ----------------------------------------------------------------------------- | |
| − | + | 7 6 5 4 3 2 1 0 | |
| − | + | ‖ ‖ ‖ ‖ │ │ └───┴── Mode (0 = hex, 1 = binary, 2 = decimal, 3 = ASCII mode) | |
| − | + | 0 ? 1 1 │ └────────── ## Data width (0 = 8 bits; 1 = 16 bits) | |
| − | + | └────────────── ## Signed (0 = unsigned, 1 = signed) | |
| − | + | ----------------------------------------------------------------------------- | |
| − | + | Functionality = command | |
| − | + | ----------------------------------------------------------------------------- | |
| − | + | 7 6 5 4 3 2 1 0 | |
| − | + | ‖ └───┴───┴───┴───┴───┴───┴── ## Command ID (0x7F = break point) | |
| − | + | 1 | |
| + | </syntaxhighlight> | ||
[[category:Proposal]] | [[category:Proposal]] | ||
Revision as of 12:42, 7 April 2024
Proposal to improve the debugging protocol used by openMSX pseudo-device.
Based on: https://openmsx.org/manual/user.html#debugdevice
Debug device protocol
The additions are marked wIth ##. This proposal is 100% compatible with the old one if unused bits was set to 0.
-----------------------------------------------------------------------------
Port 0x2E - Mode Set Register
-----------------------------------------------------------------------------
7 6 5 4 3 2 1 0
│ │ │ │ └───┴───┴───┴── Mode-specific parameters
│ │ └───┴────────────────── Output mode (0 = OFF, 1 = single byte, 2 = multi byte)
│ └────────────────────────── Line feed mode (0 = line feed at mode change, 1 = no line feed)
└────────────────────────────── ## Functionality (0 = output, 1 = command)
-----------------------------------------------------------------------------
Functionality = output, Output mode = single byte
-----------------------------------------------------------------------------
7 6 5 4 3 2 1 0
‖ ‖ ‖ ‖ │ │ │ └── Hexadecimal mode (0 = OFF, 1 = ON)
0 ? 0 1 │ │ └────── Binary mode (0 = OFF, 1 = ON)
│ └────────── Decimal mode (0 = OFF, 1 = ON)
└────────────── ASCII mode (0 = OFF, 1 = ON)
-----------------------------------------------------------------------------
Functionality = output, Output mode = multi byte
-----------------------------------------------------------------------------
7 6 5 4 3 2 1 0
‖ ‖ ‖ ‖ │ │ └───┴── Mode (0 = hex, 1 = binary, 2 = decimal, 3 = ASCII mode)
0 ? 1 1 │ └────────── ## Data width (0 = 8 bits; 1 = 16 bits)
└────────────── ## Signed (0 = unsigned, 1 = signed)
-----------------------------------------------------------------------------
Functionality = command
-----------------------------------------------------------------------------
7 6 5 4 3 2 1 0
‖ └───┴───┴───┴───┴───┴───┴── ## Command ID (0x7F = break point)
1