MSX_MISC_TOOLS
他のRepository
ツール | 説明 |
---|---|
EXTRACT_MSX_CAS/ | MSXテープイメージからファイルを取り出す(Python3) |
ブラウザで動作するMSX用ツール
HTML5+javascript ES6 で動作
ツール | 説明 |
---|---|
GSRLE/html/ | 【HTML5版 MSX画像ビューア】 BSAVE画像やグラフサウルス形式圧縮画像 (派生型ランレングス圧縮)の読み込み・表示・変換・保存が出来るツール ブラウザで実行 → https://uniskie.github.io/MSX_MISC_TOOLS/GSRLE/gsrle.html MSX上での展開表示は LOADSRD |
Windowsで動作するMSX用ツール
ツール | 説明 |
---|---|
GSRLE/ | グラフサウルス形式圧縮ツール (派生型ランレングス圧縮) 展開表示(MSX用)は LOADSRD |
OPLDRV_BGM_EXTRACT/ | 1. FMPACとRTYPEのOPLDRV用BGMデータをカートリッジから取り出すプログラム 2. opldrvデータを解析するプログラム |
Windows向けMSX用お役立ちデータ
ファイル | 説明 |
---|---|
Custom Palette for BZ Editor | バイナリエディタ Bz Editor 用 MSX Bitmap Palette |
MSXで動作するツール
ツール | 説明 |
---|---|
FieldWork/ | 高速な漢字テキストエディタ(SCREEN2とスクロール使用) |
LOADSRD/ | BSAVE画像とグラフサウルス画像を読み込み表示 (グラフサウルス圧縮対応) 圧縮は GSRLE |
MML加工用 テキストエディタマクロ集 (他レポジトリ) |
|
BLAUNCH.BAS | BASICランチャー:ターボRではCPUモード切替可能 CPUMODE.ASM...機械語部分のソースコード |
FILER.BAS | ファイル一覧&ファイル操作プログラム。 ファイル名のひらがな→カタカナ変換可能。 (MSX以外での文字化け対策のため) |
SP-EDIT/ | SCREEN5簡易スプライトエディタ(単色) |
CPU_MODE_FOR_BASIC/ | BASICからCPU MODE(Z80/R800)を切り替えるサンプル |
HIMEM.BAS | フリーエリア先頭とスタックポインタのアドレスを表示 |
BINADR.BAS | BINファイルの先頭アドレスと終端アドレスを表示 |
GETPALAD.BAS | 現在の画面モードでのVRAMパレットテーブルを返す(サンプルコード) |
KEYMTX.BAS | 簡易キーマトリクス表示 |
KEYMTXB.BAS | 少しリッチなキーマトリクス表示(turboR推奨) |
COLCOMB.BAS | 簡易スプライトモード2重ね合わせカラーリスト |
COLCOMBG.BAS | 少しリッチなスプライトモード2重ね合わせカラーリスト |
DISKイメージ
githubに直接置いてあるBASICプログラムファイルは、 参照しやすいようにアスキー形式のファイルが殆どになっているため、 MSXでロードする処理がとても遅くなります。
ロードの早い中間言語形式でのBASICファイルはDISKイメージファイルに入っています。
DISKイメージ:misctool.dsk
内容:
BINADR.BAS
BLAUNCH.BAS
COLCOMB.BAS
COLCOMBG.BAS
CPUMODE.BAS
FAMIMA.BAS
FILER.BAS
GETPALAD.BAS
HIMEM.BAS
KEYMTX.BAS
KEYMTXB.BAS
ご利用について
ソースコードやプログラムの、改変・再配布はご自由にどうぞ。 ただし、サポート・保証などはございません。
ただし、画像についての再利用はご遠慮ください。
このプログラムを使用して起きた問題については補償いたしかねますので、 ファイル・ディスクは常にバックアップを取って使用してください。
BASICからのCPUモード操作
概要
BASICからCHGCPU/GETCPUを呼び出すサンプルです。
-
CPUMODE.BAS ... CPUモードの設定/取得
-
CHGCPU.BAS ... 選択してCPU切り替え
-
GETCPU.BAS ... 現在のCPU表示
-
CPUMODE.ASM ... CPUMODE.BASの機械語部分アセンブラコード
-
CHGCPU_FROM_BASIC.txt ... CHGCPU呼び出し処理のアセンブラコード
-
GETCPU_FROM_BASIC.txt ... GETCPU呼び出し処理のアセンブラコード
解説
CPUMODE
CPUモードの設定/取得を行います。 BIOSのCHGCPUやGETCPUがない機種では何もしません。
機械語コード宣言は10行でDEFUSR
使い方は 整数変数=USR(mode値)
例) A=USR(1)
... R800に変更する。実際に変更されたモードはAに入る
※ 返り値を受け取る変数と引数(mode値)は整数である事
mode値 | 動作 |
---|---|
0 | Z80に変更 |
1 | R800(ROM) |
2 | R800(DRAM) |
それ以外 | =現在のモードを取得 |
CHGCPU / GETCPU
CHGCPU用機械語コード宣言は1010行でDEFUSR0
GETCPU用機械語コード宣言は1020行でDEFUSR1
共通のメモリ書き込み処理は2000行からになります。
MERGEして両方使う場合にやりやすいかと思いますが、 外部エディタで編集すれば済むのであまり意味は無いかもしれません。
注意事項
フリーエリア宣言を変更しないように、 VOICAQ、VOICBQ を使用しています。
- VOICAQ : $F975 - $F9F4
- VOICBQ : $F9F5 - $FA74
- VOICCQ : $FA75 - $FAF4
この領域はPLAY文での演奏時に内部的に使用するエリアで、 PLAY文で演奏していないときは書き換えても大丈夫らしいので使用しています。
そのため、PLAY文で音楽を演奏した状態では呼び出さないようにしてください。