雑多なこと。
概要
あとでまとめるかもしれないけど、調べれば調べるほどいろいろ出てきてまとまらないので、
まず書き込むことを重視してます。
別途切り出してQiitaやコミュニティ、あと自分のページにまとめることにします。
ハードウェアに関する情報
GitHub – kg68k/puni: ぷにぐらま~ずまにゅある
X68k:IOMAP – Data Crystal (romhacking.net)
X68000でも小さいEXE起動
GitHub – yosshin4004/xdev68k: Cross development environment for the SHARP X68K.
これ使って色々試してるけど、Example内に小さいExeを作るためのソースコードがあった。
ただこれ見ると、Windowsでも同じ事してたなって思った。
(WindowsもWinMainより前のプロセスが存在して、メガデモでは前プロセスを起動して容量を稼ぐという技がある。その代わりWindowsも同様に各種関数が利用不可)
ちなみに更に以下のファイルを使うと実行ファイルを縮めることができる。
パッカーっぽい。
ITA lzx – アーカイバ / ファイル圧縮 / ファイル差分 – ツール – ソフトウェアライブラリ – X68000 LIBRARY (retropc.net)
GCCの最適化度合いがすごい
Xdev68kを使って他のソースコードをコンパイルしているんだけど、既存のXファイルより明らかに実行ファイルが圧縮されてる。(命令にもよるんだろうけど、容量が20%程になっている。80%の圧縮がされたという)
そして実行速度も上がっていることから、内容も最適化されていると考えられる。
ただ、アセンブラ周りや一部最適化したくない(垂直同期割り込み等)処理に対して最適化を切って記述する必要があるらしく、そういう意味では少し難易度が高いとは思う。
と言ってもハードウェア周りで調整が必要なところに最適化しない、と決め打ちすればできなくもないような・・・
プログラムの資料
68000 Assembly programming for the Sharp x68000 (chibiakumas.com)
GitHub – kg68k/kg68k.github.io
S44PLAY.X / FMPPLAY.X – ステレオ PCM 再生 – サウンド – ソフトウェアライブラリ – X68000 LIBRARY (retropc.net)
Z-MUSIC DOWNLOAD PAGE (z-z-z.jp)
GitHub – PixelDotZero/X68000: It was a game I developed a long time ago
blog:x68_devtools [Target-Earth]
色々読んだり書いたりしてる
サウンド周りの実装コードサンプルが本当に少ない
動くものが少ないという状態なので、自分でなんとか簡単な実装例を作るべく色々調べてる。
x68000:x68000 [NFG Games + GameSX]
Assembly Tutorials: Learn Z80 Assembly Programming… With ChibiAkumas!
portable_mdx/src/mxdrv at master · yosshin4004/portable_mdx (github.com)
(MXDRVのコード。と言ってもどちらかというとWindows側実装な感じがあるけど。本家も)
FM音源レジスタマップX68k – mxdrv @ ウィキ – atwiki(アットウィキ)
picoloop/OPMdrv.cpp at b022836493375ffa4071db2086c5e8a7fa31615c · yoyz/picoloop (github.com)
Z-MUSIC DOWNLOAD PAGE (z-z-z.jp)
どうも上記のところにあるサンプルをC言語に書き直せば動きそうな気がする。