はじめに
ファミコンで動作するOSを探していると、C64のカーネルとBASICインタプリタを移植した話を見つけました。ファミコンでBASICプログラムというと、ファミコン用に販売されたファミリーベーシックのカートリッジとキーボードのセットを思い出します。このセットで、プログラムの勉強を始めた方も多いのではないでしょうか。
本稿では、移植されたC64のカーネルとBASICインタプリタの動作実験を紹介します。
本稿の内容には、「レトロゲーム勉強会#10」と「Open Source Conference 2024 Kyoto」の展示内容の発表内容が含まれます。
NES64
6502CPUを搭載したパソコンに、コモドール社のC64があります。C64に搭載のカーネルとBASICインタープリタが、 2024年にcalcwatchさんによって、ファミコンに移植されました。この環境がNES64です。
ファミリーベーシックキーボードを使って、文字入力を行います。
MMC5カートリッジを使うことで、32 kB程度のRAMを利用可能です。
- PRG ROM 8Mbit
- CHR RAM 8Mbit
- WRAM 32KB+32KB
「POKE」、「PEEK」や「SYS」は利用できません。
実際の動作
NES64ではROMイメージが「nes64.zip」として提供されているので、ダウンロードします。
使用するカートリッジはMMC5対応のものです。EverDriveN8ProFamiを入手して使うのがおすすめです。
起動時すると使用できるRAMがわかります。
ファミコンで、24575 BのRAMが使用できます。
プログラムを作成しました。
おわりに
ファミリーベーシックの世界と比べると、広大なRAMの領域が広がっています。C64BASICなので、ファミリーベーシックとは文法が少し異なりますが、ファミコンで大きなソフトを作ることが可能となりました。