Amstrad CPCエミュレーター『SugarBox v2.1.1』公開!VS Codeからメモリやブレークポイントを直接操作可能に

Amstrad CPCエミュレーター『SugarBox v2.1.1』公開!VS Codeからメモリやブレークポイントを直接操作可能に

Amstrad CPC向けエミュレーター『SugarBox』の最新版となる「SugarBox v2.1.1」が、2026年9月4日に公開されました。Windows、Linux、macOSに対応するクロスプラットフォームのエミュレーターで、CPC 464、CPC 664、CPC 6128、CPC+などをサポートしています。

今回のアップデートで大きな目玉となっているのが、VS Codeを利用したデバッグ環境の強化です。新たにTCP DebugServerが実装され、外部ツールからJSON over TCPでSugarBox内部へアクセスできるようになりました。さらにVS Code拡張機能「amstrad-cpc-debug」と組み合わせることで、VS Code上からAmstrad CPC向けソフトウェアのデバッグを行えるようになっています。

一般的にゲームを遊ぶうえでエミュレーション性能が向上するタイプのアップデートではありませんが、Amstrad CPC向けHomebrewなどを開発しているユーザーにとっては、開発環境をより現代的なものにできる興味深い変更といえそうです。

●SugarBox v2.1.1
https://github.com/Tom1975/SugarboxV2/releases/tag/v2.1.1

●SugarBoxV2
https://github.com/Tom1975/SugarboxV2

VS Codeからレジスタやメモリ、ブレークポイントを操作可能に

v2.1.1で追加されたDebugServerでは、CPUのレジスタやメモリの読み書きに加えて、ブレークポイントなどのデバッグ操作を外部から扱えるようになりました。また、.sna形式のスナップショットやキーボード入力にも対応しています。

単純にCPUの状態を確認するだけではなく、エミュレーター内部の状態や入力を外部の開発環境から扱える仕組みとなっているのが特徴です。

VS Code側では「amstrad-cpc-debug」拡張機能が統合されており、普段ソースコードを編集しているVS Codeから、そのままSugarBoxを利用したデバッグ環境へアクセスできるようになっています。

CPCの各種ハードウェア状態も確認可能

今回のデバッグ機能では、CPUやメモリだけではなく、Amstrad CPCを構成する各種ハードウェアの状態も取得できます。対象として挙げられているのはCRTC、Gate Array、PPI、PSG、FDC、Tapeなどです。

Homebrew開発では、プログラムそのものだけではなく、画面表示やサウンド、入出力などハードウェア側の状態を確認したい場面もあります。そうした情報をVS Codeを利用した外部デバッグ環境から確認できるようになったことが、今回のアップデートの大きな特徴です。

とくに実機ハードウェアに近い部分を扱うAmstrad CPC向けソフトウェアでは、CPUやメモリだけでは原因を追いにくい問題もあります。各種デバイスの状態まで確認できるようになったことで、より細かなデバッグが行いやすくなっています。

CPCCore側のデバッグ機能も強化

エミュレーションの中核となるCPCCore側にも変更が加えられています。新しいデバッグ用インターフェース「IDebug」が追加されたほか、メモリ表示や、エミュレーターを停止している状態での同期スナップショットロードなどが実装されました。

また、従来使用されていたDebugSocketと、未完成だった旧デバッガーは削除されています。今回追加された新しいDebugServerを中心に、デバッグ機能を整理した形です。

さらにprotocol、step、evaluateなどを対象としたpytestによる統合テストも追加されました。外部デバッガーとの通信を含め、新しいデバッグ機能を安定して利用するためのテスト環境も整備されています。

macOS向けビルドも修正

デバッグ関連以外では、macOS向けビルドの修正も行われています。こちらは新しい開発環境への対応を目的とした変更で、クロスプラットフォームで利用できるSugarBoxV2の環境整備のひとつとなっています。

SugarBoxV2は、オリジナルのSugarBoxをオープンソースかつクロスプラットフォーム化したプロジェクトです。今回のv2.1.1は、ゲームを遊ぶための新機能というよりも、CPC向けソフトウェアやHomebrewを制作する開発者向けの環境強化が中心となっています。

VS Codeを利用しながら、エミュレーター内部のレジスタやメモリ、ブレークポイント、さらには各種CPCハードウェアの状態まで扱えるようになったことで、Amstrad CPC向け開発をより現代的な環境で行うための土台が強化されたアップデートといえそうです。

ABOUT US
アバター画像
retrogamer