@nataliapc/mcp-openmsx 1.1.5 → 1.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +41 -2
- package/dist/openmsx.js +9 -0
- package/dist/server.js +502 -327
- package/dist/utils.js +17 -0
- package/package.json +4 -1
- package/resources/audio/toc.json +31 -0
- package/resources/bios/Calling_BIOS_from_MSX-DOS.md +75 -0
- package/resources/bios/MSX2_SUBROM_BIOS_calls.md +734 -0
- package/resources/bios/MSX_BIOS_calls.md +1046 -0
- package/resources/bios/toc.json +24 -0
- package/resources/book--msx2-technical-handbook/Appendix1__BIOS_Listing.md +1464 -0
- package/resources/book--msx2-technical-handbook/Appendix2__Math-Pack.md +427 -0
- package/resources/book--msx2-technical-handbook/Appendix3__Bit_Block_Transfer.md +182 -0
- package/resources/book--msx2-technical-handbook/Appendix4__Work_Area_Listing.md +1637 -0
- package/resources/book--msx2-technical-handbook/Appendix5__VRAM_Map.md +145 -0
- package/resources/book--msx2-technical-handbook/Appendix6__IO_Map.md +128 -0
- package/resources/book--msx2-technical-handbook/Appendix8_10__Control_Codes_and_Escape_Sequences.md +76 -0
- package/resources/book--msx2-technical-handbook/Chapter1__MSX_System_Overview.md +402 -0
- package/resources/book--msx2-technical-handbook/Chapter2__BASIC.md +2148 -0
- package/resources/book--msx2-technical-handbook/Chapter3__MSX-DOS.md +2577 -0
- package/resources/book--msx2-technical-handbook/Chapter4a__VDP_and_Display_Screen.md +2052 -0
- package/resources/book--msx2-technical-handbook/Chapter4b__VDP_and_Display_Screen.md +3311 -0
- package/resources/book--msx2-technical-handbook/Chapter5a__Access_to_Peripherals_through_BIOS.md +2714 -0
- package/resources/book--msx2-technical-handbook/Chapter5b__Access_to_Peripherals_through_BIOS.md +1263 -0
- package/resources/book--msx2-technical-handbook/MSX_Kun_BASIC_Compiler.md +220 -0
- package/resources/book--msx2-technical-handbook/toc.json +82 -0
- package/resources/book--the-msx-red-book/the_msx_red_book.md +10349 -0
- package/resources/book--the-msx-red-book/toc.json +12 -0
- package/resources/msx-dos/MSX-DOS_2_Function_Specifications.md +1366 -0
- package/resources/msx-dos/MSX-DOS_2_Program_Interface_Specification.md +963 -0
- package/resources/msx-dos/toc.json +18 -0
- package/resources/msx-unapi/Ethernet_UNAPI_specification_1.1.md +369 -0
- package/resources/msx-unapi/Introduction_to_MSX-UNAPI.md +132 -0
- package/resources/msx-unapi/MSX_UNAPI_specification_1.1.md +679 -0
- package/resources/msx-unapi/TCP-IP_UNAPI_specification.md +2361 -0
- package/resources/msx-unapi/toc.json +27 -0
- package/resources/others/toc.json +11 -0
- package/resources/processors/Z80_R800_instruction_set.md +482 -0
- package/resources/processors/toc.json +24 -0
- package/resources/processors/z80-undocumented.tex +5617 -0
- package/resources/processors/z80_detailed_instruction_set.md +2025 -0
- package/resources/programming/toc.json +121 -0
- package/resources/system/MSX_IO_ports_overview.md +554 -0
- package/resources/system/toc.json +18 -0
- package/resources/video/V9938_Technical_Data_Book.md +3623 -0
- package/resources/video/V9958_Technical_Data_Book.md +417 -0
- package/resources/video/V9990_Programmers_Manual_Banzai.html +1582 -0
- package/resources/video/VDP_TMS9918A.txt +709 -0
- package/resources/video/toc.json +28 -0
package/README.md
CHANGED
|
@@ -44,13 +44,13 @@ The MCP server translates high-level commands from your Copilot AI into `TCL` co
|
|
|
44
44
|
|
|
45
45
|
### Emulator Control Tools
|
|
46
46
|
- `emu_control`: Controls an openMSX emulator: _`launch`, `close`, `powerOn`, `powerOff`, `reset`, `getEmulatorSpeed`, `setEmulatorSpeed`, `machineList`, `extensionList`, `wait`_.
|
|
47
|
-
- `emu_replay`: Controls emulation timeline: _`start`, `stop`, `status`, `goBack`, `absoluteGoto`, `truncate`, `saveReplay`, `loadReplay`_.
|
|
47
|
+
- `emu_replay`: Controls emulation timeline: _`start`, `stop`, `status`, `goBack`, `absoluteGoto`, `advanceFrame`, `reverseFrame`, `truncate`, `saveReplay`, `loadReplay`_.
|
|
48
48
|
- `emu_info`: Obtain informacion about the current emulated machine: _`getStatus`, `getSlotsMap`, `getIOPortsMap`_.
|
|
49
49
|
- `emu_media`: Manage ROM, disk, and tape media: _`tapeInsert`, `tapeRewind`, `tapeEject`, `romInsert`, `romEject`, `diskInsert`, `diskInsertFolder`, `diskEject`_.
|
|
50
50
|
- `emu_vdp`: Manage VDP (Video Display Processor): _`getPalette`, `getRegisters`, `getRegisterValue`, `setRegisterValue`, `screenGetMode`, `screenGetFullText`_.
|
|
51
51
|
|
|
52
52
|
### Programming Tools
|
|
53
|
-
- `basic_programming`: BASIC tools: _`newProgram`, `runProgram`, `setProgram`, `getFullProgram`, `getFullProgramAdvanced`, `listProgramLines`, `deleteProgramLines`_.
|
|
53
|
+
- `basic_programming`: BASIC tools: _`isBasicAvailable`, `newProgram`, `runProgram`, `setProgram`, `getFullProgram`, `getFullProgramAdvanced`, `listProgramLines`, `deleteProgramLines`_.
|
|
54
54
|
|
|
55
55
|
### Debugging Tools
|
|
56
56
|
- `debug_run`: Control execution: _`break`, `isBreaked`, `continue`, `stepIn`, `stepOut`, `stepOver`, `stepBack`, `runTo`_.
|
|
@@ -65,6 +65,45 @@ The MCP server translates high-level commands from your Copilot AI into `TCL` co
|
|
|
65
65
|
- `screen_shot`: Capture emulator screen: _`as_image`, `to_file`_.
|
|
66
66
|
- `screen_dump`: Export screen data as BASIC BSAVE instruction.
|
|
67
67
|
|
|
68
|
+
## 📚 Available MCP Resources
|
|
69
|
+
|
|
70
|
+
### What are MCP Resources?
|
|
71
|
+
|
|
72
|
+
MCP resources are structured data sets, documentation, and helper files that extend the capabilities of the MCP server. They provide essential information such as machine definitions, extension lists, media templates, and programming examples, enabling more powerful automation, testing, and development workflows for MSX software within the MCP-openMSX environment.
|
|
73
|
+
|
|
74
|
+
### Available Resources
|
|
75
|
+
|
|
76
|
+
There are more than 60 resources available, some included directly in the MCP and others accessible via download when queried. They are organized into the following categories:
|
|
77
|
+
|
|
78
|
+
- `Processors` (Z80, R800)
|
|
79
|
+
- `Bios` (Bios ROM, DOS ROM, SUBROM, ...)
|
|
80
|
+
- `System`
|
|
81
|
+
- `Audio`
|
|
82
|
+
- `Video`
|
|
83
|
+
- `Programming` (ASM, BASIC, ...)
|
|
84
|
+
- `MSX-DOS`
|
|
85
|
+
- `MSX-UNAPI`
|
|
86
|
+
- `MSX BASIC`
|
|
87
|
+
|
|
88
|
+
And two books:
|
|
89
|
+
|
|
90
|
+
- `MSX2 Technical Handbook`
|
|
91
|
+
- `The MSX Red Book`
|
|
92
|
+
|
|
93
|
+
### Resources from:
|
|
94
|
+
|
|
95
|
+
- [Grauw MSX Assembly Page](https://map.grauw.nl/)
|
|
96
|
+
- [Z80 Heaven Wiki](http://z80-heaven.wikidot.com/)
|
|
97
|
+
- [The MSX Red Book](https://github.com/gseidler/The-MSX-Red-Book)
|
|
98
|
+
- [MSX2 Technical Handbook](https://github.com/Konamiman/MSX2-Technical-Handbook)
|
|
99
|
+
- [Konamiman MSX-UNAPI-specification](https://github.com/Konamiman/MSX-UNAPI-specification)
|
|
100
|
+
- [BiFi MSX Net](http://bifi.msxnet.org/msxnet/)
|
|
101
|
+
- [MSX Wiki](https://www.msx.org/wiki/Main_Page)
|
|
102
|
+
- [MSX Banzai!](http://msxbanzai.tni.nl/)
|
|
103
|
+
|
|
104
|
+
Thanks to the authors of these resources, who have made them available under various licenses. This MCP server includes some of these resources to enhance the development experience.
|
|
105
|
+
|
|
106
|
+
The rights to these resources belong to their respective authors and are distributed under the licenses they have defined.
|
|
68
107
|
|
|
69
108
|
## 🚀 Quick Start
|
|
70
109
|
|
package/dist/openmsx.js
CHANGED
|
@@ -212,6 +212,15 @@ export class OpenMSX {
|
|
|
212
212
|
return `Error: Failed to get machine status - ${error instanceof Error ? error.message : 'Unknown error'}`;
|
|
213
213
|
}
|
|
214
214
|
}
|
|
215
|
+
async emu_isInBasic() {
|
|
216
|
+
try {
|
|
217
|
+
const response = await this.sendCommand('slotselect');
|
|
218
|
+
return response.includes('0000: slot 0') && response.includes('4000: slot 0');
|
|
219
|
+
}
|
|
220
|
+
catch (error) {
|
|
221
|
+
return false;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
215
224
|
/**
|
|
216
225
|
* Get the list of machines available in the openMSX emulator
|
|
217
226
|
* @returns Promise<object> - object with machine names and descriptions or error message
|