MSX-BASICの奥義を伝授するスレ
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG・多色刷り、
・ドット単位横スクロール、
・エスケープシークエンス・・・
色々ありましたよね。
思い出したらなんでも書き込みよろしく。
0466デフォルトの名無しさん
2007/04/16(月) 20:52:38人が作ったプログラムを逆アセンブルしてみるのが一番かな。
プログラムは人のソースを見るのが一番の教材だわな、昔から。
「この機械語は、こんなことをしている」という情報が
予め分かっているプログラムの方がなお良し。
上のプログラムだと 3e 00 でAレジスタに0を代入、
cd d5 00 でスティック情報を調べるBIOSにアクセス…という感じ。
つまり、S=STICK(0) 相当。
プログラムの速度向上なら、MSXのCを覚えるという方法もあるけど
漏れはMSXのCは分からん。Cだと「BASICの奥義」からも外れちゃうし。
どちらにしても、画面表示の場合はVRAM(やVDP)を直接いじるので、
その辺のハードの資料なり知識も必要になってくる。
とは言っても、資料はネットで出てくるので問題ない。
また、ハードの知識はBASICのプログラム作成にも有効。
MSXのプログラム作成は、Winでプログラムを組むのと違って
「おもちゃをいらっている」感があって、純粋に面白いと思う。
0467デフォルトの名無しさん
2007/04/25(水) 21:05:470468デフォルトの名無しさん
2007/04/25(水) 21:13:47機械と仲良くなると自然に覚えるよ
覚えられないとしたら
君が無意識で機械を拒絶してるってことだよ
0469デフォルトの名無しさん
2007/04/25(水) 21:18:59ttp://www.msx.d4e.co.jp/
0470デフォルトの名無しさん
2007/04/26(木) 03:08:29マクロアセンブラが標準で付属してないし、高機能なモニタもない。
ハンドアセンブルして機械語直打ちなんて正気の沙汰じゃあない。
実行するだけならファミコンよりかなり見劣りけど我慢できるけどさ。
入門用の環境としては最悪だね。
0471デフォルトの名無しさん
2007/04/26(木) 04:11:210472デフォルトの名無しさん
2007/04/26(木) 05:56:17お前、Z80のハンドアセンブルやったことないだろ?
Z80なんて命令セットもしれてるし、使えるメモリだってそんなにないんだから
よほど本格的なものでないかぎりそこまで言うほどじゃない。
ただ現在のリッチな環境に一度でも慣れてしまった者からすれば結構苦痛な作業だとは思う。
0473デフォルトの名無しさん
2007/04/26(木) 07:29:38相対ジャンプ命令を数え間違えたり、なぜか頭の中から命令が1個
抜けたり、ハンドアセンブルミスしたりでデバッグに3時間とかしょっちゅうだった。
大きなプログラムをハンドアセンブルは正気の沙汰じゃないけど、
小さなプログラムならパパッとチラシの裏にハンドアセンブルした方が速い。
今の時代なら、Win用のZ80アセンブラとかも使えば。
フロッピーで実機とやりとりできるわけだし。
ファミコンの開発だって、今はWin用の6502アセンブラ使うんだから。
MSXベーシックは命令数が少なく簡単なので、マニュアルなくてもパパッと書けるから
漏れにとっては思考を阻害されずにプログラムを書ける、有り難い機械だけど。
0474デフォルトの名無しさん
2007/04/26(木) 08:17:370475デフォルトの名無しさん
2007/04/26(木) 08:41:13HSPとかで書いた方がMSXの機械語より速いのに
愕然とはするけどさ、オモチャで遊びたいのよ。
0476デフォルトの名無しさん
2007/05/16(水) 00:38:490477デフォルトの名無しさん
2007/05/16(水) 00:40:260478GIGAMIX撲殺委員会
2007/05/25(金) 12:24:33DM-SYSTEM2みたいな他人のプログラム寄せ集めただけのクズソフトがあるから
みんなそれに甘えてしまってマシン語の勉強すらしなくなってしまう。
いいかげんにしろGIGAMIX!!
MSXのユーザーレベルを落とした張本人はおまえらだ!
0479デフォルトの名無しさん
2007/05/25(金) 18:38:01ユーザのレベルを云々する前に、自分の胸に手を当てて考えてみるべきだ。
自分は、MSXユーザ全体の質を向上させるために、何か努力をしてきたか、と。
努力と苦行をはき違えてるのは痛々しい。
「自力で解析する能力が衰えるから、MSX内部の技術資料は抹殺するべき。」とか
「ハンドアセンブル能力が衰えるから、アセンブラはなくすべき。」とか
「漢字コードから漢字入力する能力を身につけるために、漢字変換FPはなくすべき。」とか考えるか?
そもそも、MSXユーザのレベル以前に、ろくな開発環境も構築できない
安物のオモチャだったせいで、人をつなぎ止められなかったろう。
こんな変な制限ばかりでプログラミングしづらいヘッポコ8bit機を
好んで使うような奴は、貧乏人か、変態か、その両方でしかない。
普通はみんなX68000みたいな開発のしやすい、ぬるま湯のような環境を好むんだよ。
0480デフォルトの名無しさん
2007/05/25(金) 20:21:43GIGAMIX関係者乙
0481デフォルトの名無しさん
2007/05/25(金) 23:21:46で、今のオープン系の惨状があるわけか。
0482デフォルトの名無しさん
2007/06/12(火) 09:59:46> X=X-(S=2)-(S=3)-(S=4)+(S=6)+(S=7)+(S=8)
> Y=Y-(S=4)-(S=5)-(S=6)+(S=8)+(S=1)+(S=2)
この書き方は速度とスペースの観点からオススメしない。
(S=2)という書き方はマシン語レベルでは条件分岐になって
速度が落ちる大きな原因の1つだから
できるものは>>461のようになるべく配列用意したほうが良いよ。
0483デフォルトの名無しさん
2007/07/31(火) 17:51:5007/27 11:23 管理人 : 公開できない名前など使わないのが正しいと思いますが…。本名でもないのに何を言い出すのか。その態度が他人にとって迷惑なことに、いい加減気づいていただきたい。
07/23 03:08 名称未設定 : 前使っていた仮名の正体を思いっきりバラされてしまったもので……。というわけで、この名前ももう使えませんね。
07/21 17:55 管理人 : 名称未設定なんて名前をわざわざ設定してる時点で…。時間に関しては申し訳なかったです。もうここ需要無いと思ってたんですけどねぇ。
07/14 01:51 名称未設定 : 7/14の飲み会、何時から開催か書いてあれば助かりますですね……。
MSX系の某所掲示板より…
何この管理人、ホームラン級のバカだな、こいつ。
0484デフォルトの名無しさん
2007/09/16(日) 16:45:520485デフォルトの名無しさん
2007/11/25(日) 22:01:030486デフォルトの名無しさん
2007/11/26(月) 12:16:36poke-1,1 メモリマッパがあると爆走するらしい。
MSX2の縦スクロールゲームは1ドットだけスプライトが上か下にずれる箇所がある。
スプライト一斉消去ラインの座標。
MSX2以降はSHIFT+かなでロマかな打ちモード。
ROM版のべーしっ君は16KROMなので裏RAMに転送するプログラム作れば終わりだけど
配布はしない方がいいに決まっている。
作者の鈴木さんはオブジェクトコード直接吐く版も作りたいとか言ってたけど実現せず。
この人ビルゲイツにコード書きで勝利した逸話があるらしい。
0487デフォルトの名無しさん
2007/11/26(月) 12:20:33RAM8Kのマシンがあったこともお忘れでいいです。
0488デフォルトの名無しさん
2007/11/26(月) 13:39:210489デフォルトの名無しさん
2007/11/26(月) 20:41:32あってもおかしくないな、とは思っていたけど。
実現していたら最強のベーシックコンパイラだっただけに、残念。
0490デフォルトの名無しさん
2007/11/29(木) 05:56:58その鈴木さん、今フリータかwww
0491デフォルトの名無しさん
2007/11/29(木) 23:48:41⊇Mマガ保存版2
0492デフォルトの名無しさん
2007/11/30(金) 05:39:2140過ぎてフリータ(で密航して捕まったの)はエメドラのコード書いた人
0493デフォルトの名無しさん
2007/12/01(土) 09:30:40ボーステックの人か。懐かしいな。
0494デフォルトの名無しさん
2007/12/03(月) 11:00:410495デフォルトの名無しさん
2007/12/27(木) 01:18:02ス ク ス _ | | │ //. ス ク ス _ | | │ // /ハ \_/ 八
/ ス ─ | | ッ // / ス ─ | | ッ // /_______}
/ _____ // / // ..{_____ニート_|
. / l⌒l l⌒l \ )) ____ |ミ/ ー―◎-◎-)
. / / ̄| ,=| |=、| ̄ヾ / ____ヽ (6 u (_ _) )
/ ̄/ ̄. ー'●ー'  ̄l ̄ | | /, −、, -、l )) ―-、ノ/| .∴ ノ 3 ノ 直人にょ.
| ̄l ̄ ̄ __ |.  ̄l ̄.| _| -| ,=|=、 || | -⊂)/ _\_____ノ__
|. ̄| ̄ ̄ `Y⌒l__ ̄ノ ̄ (6. ー っ-´、} | |/ 粘 ≡ :::: (、 ヽ
ヽ ヽ 人_( ヾ ヽ `Y⌒l_ノ ヽ `\( 着 ≡ :::: |___|
>〓〓〓〓〓〓-イ /ヽ 人_( ヽ `− ´ ( .無職 ::::. | |
/ / Θ ヽ| /  ̄ ̄ ̄ ヽ-イ (うーたん萌え.(t )
0496デフォルトの名無しさん
2008/01/13(日) 03:49:20ttp://www29.atwiki.jp/msx_basic/
0497デフォルトの名無しさん
2008/01/21(月) 20:44:300498デフォルトの名無しさん
2008/01/21(月) 22:24:350499デフォルトの名無しさん
2008/01/27(日) 07:12:20拡張子.BASは付けなくても保存できますが、
拡張子は付けなくても問題はありませんか?
.BASを付けているが多いので気になります。
0500デフォルトの名無しさん
2008/01/28(月) 01:04:410501デフォルトの名無しさん
2008/01/28(月) 01:34:21慣例みたいなものなんで、別に何でも良いよ
でも起動直後に実行させたいプログラムだけは
autoexec.basというファイル名にしないといけない
0502デフォルトの名無しさん
2008/01/28(月) 07:54:14ありがとうございます。
では、autoexec.bas以外の自作ゲームのようなプログラムで
拡張子を付けずとも後々に困るというような局面はないということで宜しいでしょうか?
0503デフォルトの名無しさん
2008/01/28(月) 10:39:20それが何のファイルかが拡張子で分かりやすいから。
つけないと、ファイル整理で困ることになると思われ。
0504デフォルトの名無しさん
2008/01/28(月) 11:40:100505デフォルトの名無しさん
2008/01/28(月) 13:35:26なるほど。整理用としての拡張子という訳ですね!
>>504
シンプル イズ ベストとか思ったりしまして・・・。
0506デフォルトの名無しさん
2008/01/28(月) 13:36:35save”program.”だと拡張子なしのprogramでsaveされる。
別に同じ名前のファイルがなければ拡張子はあってもなくても問題はないが、loadするときbas以外は拡張子が省略できないので面倒。
0507デフォルトの名無しさん
2008/01/28(月) 14:09:320508デフォルトの名無しさん
2008/01/28(月) 14:46:31拡張子がないと「中身は独自バイナリかな?」と思ってしまう。
0509デフォルトの名無しさん
2008/01/28(月) 15:20:44MS-DOSには拡張子があります。
基本は、MS-DOSの流儀に従って拡張子を付けるべきです。
これはWindowsでも同じように通用します。
0510デフォルトの名無しさん
2008/01/28(月) 16:50:05新手の釣りだったのか?
0511デフォルトの名無しさん
2008/01/28(月) 21:05:130512デフォルトの名無しさん
2008/01/29(火) 06:31:51勝手にコピペしてあたかもマルチしているように邪魔されてるんです。
0513デフォルトの名無しさん
2008/01/29(火) 17:58:140514デフォルトの名無しさん
2008/01/29(火) 23:23:15MSXなら公式エミュもあるし、ワンチもあるし、
非公式エミュも発展しているしで、動作させるには困らない。
0515デフォルトの名無しさん
2008/01/30(水) 08:43:10中にある手本のBASICプログラムをMSXに打ち出した場合、
ちゃんとRUNするのでしょうか?
BASICにも色々種類があるようですし、
「こんにはマイコン」でもMSX版とPC-6001版とかがあります。
中古でBASIC本を買うときはその辺りが難しいです。
中には表紙に対応ハードを書かずに単にBASICというだけのものもあり、
それがMSXでも使えるのかどうかなど。
MSX以外のBASIC本を買った場合、MSXユーザーとしては、
どういうところを読み替えたりする必要がありますでしょうか?
大抵は問題ありませんか?
0516デフォルトの名無しさん
2008/01/30(水) 08:56:30MSXは下位完全互換なので、MSX1用のものはMSX2でも2+でも動く。
他機種のベーシックからの移植は、難しいと思う。
両機種のハードを知っていないといけないから。
MSXは、まず他機種よりも画面が狭いので、画面回りは
大きく手を入れる必要が出てくる。
なので、「MSX用」かどうかを確認してから打ち込まなければいけないし、
他機種用のベーシック本を買って勉強は間違っていると考えるべき。
資料なら、MSXの場合はネットで検索すればある程度は出てくる。
0517デフォルトの名無しさん
2008/01/30(水) 12:03:38そのファイルを実機や公式エミュなら2Dフロッピーに、
1チップならSDカードに、非公式エミュならdiskmgrとかでディスクファイルに
入れると動作するので、ひょっとしたらプログラムの入力は
OCRソフトが役に立つかも。
0518デフォルトの名無しさん
2008/01/30(水) 16:28:35そういうのは上位互換って言うんだよ!
下位互換っていうのはturboRがMSX1でも動くようなことを言うんだよ!
0519デフォルトの名無しさん
2008/01/30(水) 17:43:390520デフォルトの名無しさん
2008/01/30(水) 20:50:10SAVEしたファイルを削除する方法が分かりません。
BASIC命令で削除するにはどうすれば良いのでしょうか?
0521デフォルトの名無しさん
2008/01/30(水) 20:57:480522デフォルトの名無しさん
2008/01/31(木) 10:41:53ありがとうございます!
0523デフォルトの名無しさん
2008/01/31(木) 15:03:460524デフォルトの名無しさん
2008/01/31(木) 15:20:39悪いとは言わんが。
俺ももうちょっと年寄りになって余裕ができてきたら
また遊ぶかもしれん。
0525デフォルトの名無しさん
2008/01/31(木) 19:39:170526デフォルトの名無しさん
2008/02/01(金) 09:26:33KILL"ファイル名”で問題なくSDカードにあるファイルを削除できました。
ありがとうございます。
当方、手持ちのMSX1のマニュアルや全BASICコマンドのリファレンスカード、
またはテープレコーダーのマニュアルにもこのKILLコマンドは記載しておりません。
このコマンドは昔からあったコマンドでしょうか?
フロッピーディスク内のファイルをいじる際に使うコマンドだったのでしょうか?
0527デフォルトの名無しさん
2008/02/01(金) 10:45:53ttp://www.imasy.or.jp/~ngs/fsw/wiki.cgi/TechHan?page=1.2+MSX+DISK-BASIC%A4%CE%CC%BF%CE%E1
0528デフォルトの名無しさん
2008/02/01(金) 11:39:12DataPackのWiki化計画はないかな。
0529デフォルトの名無しさん
2008/02/01(金) 12:15:060530デフォルトの名無しさん
2008/02/01(金) 13:13:48>さらにディスク操作の命令が追加されたMSX DISK-BASICが利用できます
テクハンHPの、ベーシックの項目にちゃんと説明がある。
ゆっくり読んで勉強してくれ。
0531デフォルトの名無しさん
2008/02/01(金) 15:58:50「DISK」ってのは、ドライブレター("A:"とか"B:"とか)でアクセスできる
デバイスの総称。RAMDISKも含まれる。
あとはのんびり勉強してくれ。
0532デフォルトの名無しさん
2008/02/01(金) 20:05:500533デフォルトの名無しさん
2008/02/01(金) 20:33:040534デフォルトの名無しさん
2008/02/02(土) 00:29:17ありがとうございました!
0535デフォルトの名無しさん
2008/02/02(土) 01:09:19点数表示ができない。助けて!アルゴマン!
0536デフォルトの名無しさん
2008/02/02(土) 09:24:18preset (x,y)
print #1, score
だっけ?
0537デフォルトの名無しさん
2008/02/02(土) 09:40:1520 OPEN "GRP:" FOR OUTPUT AS #1
100 PRESET(100,100)
110 PRINT #1,"HELLO WORLD!"
120 GOTO 120
グラフィック画面でテキストを表示する場合、こうやる。
凝りたければ、COPY命令(またはそれに準じるもの)でスコアを表示するのもアリだな。
スクロールするゲームが作りたいという場合は、
スプライトでスコアを表示させるか、垂直帰線割り込みによる
画面分割というテクニックが必要になってくる。
0538デフォルトの名無しさん
2008/02/02(土) 19:28:02■■■■■■■■タイトル
■■■■■■■■□□□□
■■ゲーム画面■□点数□
■■■■■■■■□□□□
■縦スクロール■□残機□
■■■■■■■■□□□□
■■■■■■■■□□□□
こんな画面構成にしたいんですが
0539デフォルトの名無しさん
2008/02/02(土) 19:56:34その画面割りで1ドットスクロールは、漏れにはでけん。
0540デフォルトの名無しさん
2008/02/04(月) 14:58:46新スレ立てるのもアレですし、
このスレに統合しても構わないですか?
0541デフォルトの名無しさん
2008/02/04(月) 21:01:33お前、わかっててわざと言ってるだろ。
0542デフォルトの名無しさん
2008/02/04(月) 22:25:55垂直帰線(V-Sync)ではなく水平帰線(H-Sync)ね。念のため。
0543デフォルトの名無しさん
2008/02/05(火) 12:51:02MSX-DOSを使いこなせれば、その知識でMS-DOSも使いこなせるものでしょうか?
0544デフォルトの名無しさん
2008/02/05(火) 13:35:31CD
MD (Mkdir)
RD (Rmdir)
がMSX-DOSには無かった記憶が。
結局、MSX-DOSもMS-DOSもMSX-DOS2も、そこから動かすコマンド次第なので、
使えるようにはなるけど使いこなせていない。と感じると思う。
PJだよ。PJ.PatternJack最高
0545デフォルトの名無しさん
2008/02/05(火) 13:50:51すみません。私がやりたいのはMSX-DOS2の方ですね。
こちら方ではMS-DOSと共通部分が多いということですか?
MS-DOSは16ビットでMSX-DOSは8ビットの機能限定版と聞いたこともあります。
0546デフォルトの名無しさん
2008/02/05(火) 14:24:27実際のプログラムは「まったく」使えないし。
ファイル管理方法が同じで、COMMAND2.COM(DOS2)とCOMMAND.COM(MS-DOS)上の
コマンドでよく使うのが同じ。ってくらい。
MS-DOSとの関係的に話を広げちゃうと
・CONFIG.SYSによるデバイスの設定
・常駐プログラムの概念
・EMS/BMSなどの追加メモリ管理の概念(デバイスドライバだけど)
とか、範囲が広がりすぎる。
MS-DOSで何をしたいんでしょう?
0547デフォルトの名無しさん
2008/02/05(火) 15:12:52「プログラム書いててDOSも知らねーのかよ」と思うことがあるが、
今からDOSを学習しようとする奴を見ると、
「何で今頃DOS?」と思ってしまう、矛盾した俺。
0548デフォルトの名無しさん
2008/02/05(火) 15:33:15なるほど。そういうレベルでの利用法ならMSX-DOS2でも勉強になるかもしれないな。
0549デフォルトの名無しさん
2008/02/05(火) 15:35:56MSX-DOSはファイル形式とシェルがMS-DOS風味になったCP/Mです。
BDOSコールなどは完全にCP/Mですから。
0550デフォルトの名無しさん
2008/02/05(火) 16:53:531chipMSXやMSXPLAYerでのファイル管理です。
またMSX-DOS2を覚えることが、MS-DOSを覚えることと等しいのであれば、
ウインドウズでのコマンドプロンプトも使いこなせることになると思ったからです。
当方、今のところコマンドプロンプトを使えません。
0551デフォルトの名無しさん
2008/02/05(火) 17:16:18ファイル名を指定して実行
cmd
でコマンドプロンプトを開けて、
help | more
DOSのシェルでやれることなんてしれてるからね。
0552デフォルトの名無しさん
2008/02/07(木) 03:36:46widthで幅を少なくして余白をずらすってテクニックがあったよな。
0553デフォルトの名無しさん
2008/02/09(土) 08:52:18全てBASICで作られたものでしょうか?マシン語で作られたものでしょうか?
MSX1のボコスカウォーズのようなものが作りたいのですが、
BASICだけで再現できますか?マシン語は必要ですか?
Mマガに作者が大学生の時に作ったと言っていました。
一人であれだけのゲームを作れるなんて凄いですね。
0554デフォルトの名無しさん
2008/02/09(土) 09:12:43マシン語で作られているのがほとんどだが、
ベーシックでも作れなくはない。まずは、作ってみればよい。
ベーシックで遅いと思ったら、処理の重い部分を一部マシン語にして
ベーシックからその部分を読み出すようにするだけで全然違う。
そうやって、徐々にマシン語にしていけばよい。
0555デフォルトの名無しさん
2008/02/09(土) 09:27:43市販のパッケージソフトでオールBASICで作ったゲームタイトルはありましたか?
0556デフォルトの名無しさん
2008/02/09(土) 10:36:25あれ、工夫したらリスト表示されたし。
0557デフォルトの名無しさん
2008/02/09(土) 18:56:20ROMカートリッジでお願いします。
0558デフォルトの名無しさん
2008/02/09(土) 19:25:140559デフォルトの名無しさん
2008/02/09(土) 20:22:37偉そうだな
自分で調べる気、ない?
0560デフォルトの名無しさん
2008/02/09(土) 20:37:06知っていて、面白半分に質問していると思われ。
0561デフォルトの名無しさん
2008/02/09(土) 22:45:47この時点でイマドキノヒトではないな・・・
0562デフォルトの名無しさん
2008/02/10(日) 07:37:42イマドキの新参者です。
Mマガ永久保存版にボコスカウォーズの作者が寄稿していたのです。
0563デフォルトの名無しさん
2008/02/11(月) 08:02:55いいえ、最近1チップMSXを買って始めた初心者です。
0564デフォルトの名無しさん
2008/02/11(月) 11:15:57ほんとうにMSX初心者であるなら、とりあえず…
横に割るのはOKで、縦に割るのがNGな理由はハードウェア(というかビデオ信号の理屈)を知っていればすぐ判る
というか、判ってないならスクロール型のSTGなんかそうそう作れない
って書いてたら、ZANACのMSX1版とMSX2版の差を思い出した
ファミコンですら画面縦割りでスムーズスクロールするSTGなんて思いつかんしなあ
0565デフォルトの名無しさん
2008/02/11(月) 13:21:27■ このスレッドは過去ログ倉庫に格納されています