MSX-BASICの奥義を伝授するスレ
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG・多色刷り、
・ドット単位横スクロール、
・エスケープシークエンス・・・
色々ありましたよね。
思い出したらなんでも書き込みよろしく。
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:270566デフォルトの名無しさん
2008/02/11(月) 13:41:54SET PAGE の命令の説明を見れば分かるかと。
0567デフォルトの名無しさん
2008/02/11(月) 13:44:07テキストが独立するけど単色しか出ない88や98ってのも、いちおーありか?
FM-77AVあたりだとテキストすらグラフィック画面に上書きで吹いた覚えがあるなあ
0568デフォルトの名無しさん
2008/02/11(月) 16:21:36ファミコンのロードファイターが画面縦割りだったぞ。
あれはスコアとかをオブジェでやってたんかな。
0569デフォルトの名無しさん
2008/02/11(月) 17:25:54ついでにギャラガもそうだっけか
背景無地だし、多分、スコア部分はスプライトだろうかな。ロードファイターのロードマップは縦線だし
ギャラガぐらいの背景なら、書き換えてもチラつきは「演出です」でごまかせそうだが
スコア部背景無地なら擬似的にできる、ということになるか
0570デフォルトの名無しさん
2008/02/11(月) 17:43:34左メイン部分の星のスクロールをスプライトで描いている。
ロードファイターは、右のスコア部分全てをスプライトで描いている。
だから、画面を縦割りできている。
工夫の産物だな。
0571デフォルトの名無しさん
2008/02/11(月) 18:35:440572デフォルトの名無しさん
2008/02/11(月) 18:40:30FM-7はテキストもグラフィックVRAM直書きなのを逆手にとって
RGM3プレーンまで文字重ねてかけるぞ。
パレットで色も合成も自在。
0573デフォルトの名無しさん
2008/02/12(火) 00:51:41PC-8801/PC-9801系は、テキスト+RGB3(98VM2以降はさらに+1)プレーンあったから
プレーンとパレットの割り振り次第では結構できるはず。Xanaduとか旨く利用してた。
MSXはプレーンタイプの割り振りじゃないから厳しいよね。
0574デフォルトの名無しさん
2008/02/12(火) 07:04:450575デフォルトの名無しさん
2008/02/12(火) 08:40:380576デフォルトの名無しさん
2008/02/12(火) 08:52:28|
∩___∩ |
| ノ _, ,_ ヽ (( | プラプラ
/ ● ● | (=)
| ( _●_) ミ _ (⌒) J ))
彡、 |∪| ノ
⊂⌒ヽ / ヽノ ヽ /⌒つ
\ ヽ / ヽ /
\_,,ノ |、_ノ
0577デフォルトの名無しさん
2008/02/14(木) 00:56:198ドット単位の潔いスクロールだったなぁ。そういえば。
でも回転する面はすばらしかった。
0578デフォルトの名無しさん
2008/02/14(木) 11:00:220579デフォルトの名無しさん
2008/02/16(土) 04:49:26間に合いませんか?
0580デフォルトの名無しさん
2008/02/16(土) 07:51:42どれだけのものを書き直すかにもよるだろ。
0581デフォルトの名無しさん
2008/02/16(土) 07:51:570582デフォルトの名無しさん
2008/02/16(土) 21:50:33適当にゴミ描いて、85x10のサイズをYMMMでコピーしてスクロール
ページはスプライトエリア触るのがめどいから、1と3を使ってかぶらんよーに回避
画面の切り替わり部分で表示が消えるけどスルー
見た目の同期を取るためのウェイトも無し
310行目はZ80モードなら、YMMM終了にBASICが追いつかないから要らんけどね
100 SCREEN 5:OPEN"GRP:"FOR OUTPUT AS #1
120 SETPAGE 1,1:CLS:FOR I=0 TO 100
140 LINE(RND(1)*160,RND(1)*212)-(RND(1)*160,RND(1)*212),RND(1)*16
160 NEXT:COPY(0,100)-(255,200) TO (0,190)
170 SETPAGE 1,3:CLS:PSET(169,1),0:PRINT#1,"SCR:000000"
190 FOR I=0 TO 255
210 VDP(35)=0:VDP(36)=3:VDP(37)=170:VDP(38)=0:VDP(39)=(I+20)AND255
260 VDP(40)=1:VDP(43)=10:VDP(44)=0:VDP(46)=0:VDP(47)=&HE0
310 IF(VDP(-2)AND1)=1THEN310
340 VDP(24)=I:NEXT:GOTO 190
あー遅い。
0583デフォルトの名無しさん
2008/02/16(土) 22:10:300584デフォルトの名無しさん
2008/02/16(土) 23:02:17つくづく、そのあたりが面倒な画面仕様だな。
0585デフォルトの名無しさん
2008/02/16(土) 23:50:04SETPAGEと送り先ページ指定で、どこからどこへもCOPYは出来ると思うが
SETPAGEとかの手続きがめどいってのは確かだな
でもページを1枚1枚分割するほうが、とっつきやすいからの
0586デフォルトの名無しさん
2008/02/18(月) 09:25:480587デフォルトの名無しさん
2008/02/18(月) 13:50:210588デフォルトの名無しさん
2008/02/18(月) 14:01:490589デフォルトの名無しさん
2008/02/18(月) 14:27:480590デフォルトの名無しさん
2008/02/24(日) 22:50:020591デフォルトの名無しさん
2008/02/25(月) 12:23:52>>570ですでにFCを例にしてその解決策が出ているにもかかわらず
>>579みたいな質問がキタからこの流れなわけだが…
もしや、SC3のなんじゃこりゃ画面にスプライトでスコア?
■ このスレッドは過去ログ倉庫に格納されています