MSX-BASICの奥義を伝授するスレ

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
NGNG
忘れない内に皆に伝授しときましょう。

・多色刷り、
・ドット単位横スクロール、
・エスケープシークエンス・・・
色々ありましたよね。
思い出したらなんでも書き込みよろしく。
2005/05/21(土) 16:03:46
>>358
20000円もあれば中古で買えるべ?
2005/05/21(土) 22:15:02
正解
2005/05/21(土) 22:22:13
中古より新品が欲しいよ
2005/05/21(土) 23:44:15
1スロット機を否定したのは他ならぬ西氏なのだが
2005/05/30(月) 17:48:44
関係ないけど、MSXのデジタルディスプレー端子か、ビデオ端子を
今のPC用のアナログディスプレー端子に変換するコンバーターみたいなのってあります?
昔は電波新聞社がそんなの出してた記憶があるんだけど
2005/05/30(月) 18:52:12
MSXはアナログRGBだ。

一応まだ売ってる模様。
ttp://www.micomsoft.co.jp/xrgb-2plus.htm
2005/05/30(月) 19:25:16
そうだそうだ、デジタルじゃ8色だな…
ありがとう
366デフォルトの名無しさん
垢版 |
2005/07/05(火) 15:23:00
>>353
商品化まで3147台、無理そうだな。
367デフォルトの名無しさん
垢版 |
2005/07/25(月) 02:31:01
>時々言われる「どうして公開しないんだ」の答えの1/5は人手不足、もう4/5は言ったら誰かのクビが飛ぶような話です。
こんな考えじゃあ予約数が伸びないのも当たり前だよ、湾ちっぷ。
値段も当初の12000円前後から2マソ近くに跳ね上がってるし。
368デフォルトの名無しさん
垢版 |
2005/07/25(月) 11:15:39
GIGAMIXかあ・・・活動内容は頑張ってるかもしれんが
一般人を見下しているような態度が気に食わん
たかがMSXごときのお山の大将が偉そうに

まあGIGAMIXに限らず中途半端な実力を持った技術屋もどきは
己を過信して勘違いしがちではあるがね
2005/07/25(月) 14:39:20
GIGAMIXて、他人のプログラムの寄せ集めじゃん。
370デフォルトの名無しさん
垢版 |
2005/08/13(土) 05:40:54
>>353
現在の予約注文数:2900台
商品化決定まで、あと2100台
予約受付終了まで、あと7日

もうだめぽ
2005/08/13(土) 17:52:54
アンカーで検索結果を増やそうってな魂胆か?
2005/08/14(日) 00:41:13
3000くらいまで行けばなんとかなるかもしれへんよ?
2005/08/14(日) 13:55:36
>>370
残り7000台をポケットマネーで買う羽目になった西さんですね。
1億4000万円用意しておいて下さいよお〜w
374デフォルトの名無しさん
垢版 |
2005/09/26(月) 19:12:23
>現状ではmixi内のMSXユーザーズコミュニティでスロット数に関するアンケートを取っている場所がありまして、画像のように
>面白い結果になっています。
>ttp://mixi.jp/view_enquete.pl?id=1873267
>mixiは「招待されないと入れない」という大問題があるものの、ここなら「投票は一人一回まで」が守られるし、第三者機関が
>管理しているので信頼され易いと思われます。まだ投票数が40強と少ないのですが、それなりに数がまとまれば説得力を持つ
>でしょう(結果として1スロットに傾くかもしれませんけど)。

そういう閉鎖されたアンケートに対し、取り敢えずここで回答。
「予約数が5000に遠く及ばなかったんだから、集計中とかアスキーからは出さないがMSXAから出すよう交渉中とか、女の腐ったのみてぇにぐたぐた言ってねえで即刻発売中止にしろ!!」
2005/09/26(月) 21:44:34
mixiって最近流行ってるみたいだけど、どれくらい人いんの?
2005/09/26(月) 23:17:03
むかP板によるとMSXユーザーズコミュニティだけで1100人余だって
377デフォルトの名無しさん
垢版 |
2005/09/27(火) 00:14:18
MSXか、なつかしいなぁ。ロードランナーばっかりやってたなぁ。
378デフォルトの名無しさん
垢版 |
2005/11/05(土) 18:37:57
mixiの他にMSXで盛り上がってそうな場所はあるの?
2005/11/05(土) 19:33:59
>>378
ttp://www.msx.org/
2005/11/06(日) 01:41:11
>>378
http://1ch.tv/
2005/11/06(日) 09:16:02
>>378
          ,′  //,,-‐"//ヽ ヽ
          l    |'〆-‐/' ‐-ゞ l
           |     |'   _       l| |
          |    l ,r7〒  〒=、/ l
          l∧.,∧|',弋ノ‐、 ,弋ノ、/l
           l:;、;:::;:lヘ_  _.ノ ̄、_ _ノ:;l
.        || ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
     .__ ||                      |
     ヽヽ||     トイレ            |
      t==、                       ,=、
      l '=',    行ってくるね        `=3
        ヽ'||'                         |`′
.        ||                      |
.        ||                      |
.        ||______________|
382警告
垢版 |
2005/12/07(水) 19:54:52
ヤフオクMSX 吊上げ屋に注意

http://snow.prohosting.com/retropc/img-box/img20051207170957.jpg

http://snow.prohosting.com/retropc/img-box/img20051207181315.jpg

emiri1ban=linecraft1
2005/12/07(水) 20:04:00
おお、警告サンクス!
384デフォルトの名無しさん
垢版 |
2005/12/23(金) 00:33:50
どう見てもMSX支持者の落胆です。本当にありがとうございました。
385デフォルトの名無しさん
垢版 |
2006/01/16(月) 23:01:49
MSX−BASICの詳しい解説してくれてるサイトはないものか・・・
2006/01/17(火) 06:25:24
ここで聞けよww
387デフォルトの名無しさん
垢版 |
2006/01/17(火) 10:23:23
>>385
何が聞きたいんだ?
388デフォルトの名無しさん
垢版 |
2006/01/17(火) 10:32:47
LD BC,$0501
2006/01/17(火) 21:50:27
76
2006/01/18(水) 10:14:06
さっさと 318 が流れてくれるとありがたいんだがなあ
2006/01/29(日) 01:02:37
今でも、アルゴリズムっていうほどでもないんだけど‥
考え方なんかは、VisualBasicで利用できるものが多いと思う。

Mid$("123456789ABCDEF",A,1) とかで、簡単に1〜16の、10進数の変数Aを
16進数に変換できる。とかね。
2006/01/29(日) 01:05:08
間違った、0〜15までの10進数だった。
2006/01/29(日) 13:35:09
つ Hex$
2006/01/29(日) 14:05:34
何で最近のVBとかにはHEXは会ってもBINはないのかねぇ
2006/02/11(土) 10:44:02
>>391
独自仕様の62進数(数字10+英小26+英大26)とかが
手軽に変換できるってやつじゃのー
20年も前の雑誌とかではよく使われてたのー
2006/02/11(土) 19:58:13
62進数・・・64進数(BASE64)じゃねーの?
2006/02/13(月) 19:10:22
>>396が何を言いたいのかさっぱりわからん。
398395
垢版 |
2006/02/18(土) 10:13:10

俺もなんとなくしか解らなかったけど、
BASE64って64進数だったのか…って事が解って勉強になった。

(参考)
http://search.yahoo.co.jp/bin/search?p=MIME*BASE64


2006/02/18(土) 22:15:02
n進数のnのことを基数って言うでしょ
それはbaseの訳なのよ
2006/02/18(土) 22:16:22
>>397
62進数じゃ使いにくいから64進数じゃないの?ってことでしょ
401デフォルトの名無しさん
垢版 |
2006/02/25(土) 22:23:56
>>382
新着スレ
【M S X】maebashi301=sanibu1818【吊上注意】
http://pc7.2ch.net/test/read.cgi/yahoo/1140692617/l50
2006/04/02(日) 01:12:33
漢字BASICで、テキスト表示とLINE文とが同時に混在させられるって
あったような
403デフォルトの名無しさん
垢版 |
2006/04/10(月) 23:16:18
87 :名無しさん(新規) :2006/04/09(日) 14:38:45 ID:R8bwXkp00
ヴァーラ=エンジョゲ!?

【永遠に】 MSXスレ Part15 【集計作業中】
http://bubble4.2ch.net/test/read.cgi/i4004/1132584409/l50

88 :名無しさん(新規) :2006/04/10(月) 15:49:14 ID:qeIF0Rhr0
正義は武器に似たものである。武器は金を出しさえすれば、敵にも味方にも買われるであろう。
正義も理屈さえつけさえすれば、敵にも味方にも買われるものである。
                                        − 芥川龍之介 −


89 :名無しさん(新規) :2006/04/10(月) 22:09:26 ID:+psJvhrV0
ハァ?

90 :名無しさん(新規) :2006/04/10(月) 23:02:37 ID:OSgWs4AU0
敵だの味方だのって‥‥‥。

どう見てもヴァーラ=エンジョゲです。
本当にありがとうございました。
404デフォルトの名無しさん
垢版 |
2006/04/11(火) 10:37:54
>>391
つうかそんなの他の言語でも文字変換や文字種判定なんかで普通に使うじゃん
ちなみにmid$(”0123456789ABCDEF",a-1,1)でないと使えないけどな
2006/04/26(水) 20:47:24
>>404
人の訂正をするときに間違えると、恥ずかしさ倍増だよねw
2006/05/27(土) 04:33:48
Mファンについて語れる奴は、明日の夜10時にここへ

http://bubble4.2ch.net/test/read.cgi/i4004/1143312133/1-100
2006/06/12(月) 13:39:41
on A gosub(goto) 200,300,400,500,600
みたいな制御構文大好きだったな
2006/06/13(火) 22:49:27
後追い者(リアルタイムに触ってない)からの質問ですが
MSX-BASIC+マシン語プログラムの場合、どんな処理を
マシン語に任せてたんですか?
2006/06/13(火) 23:25:00
>>408
ループが大量に回ったり、連続するアドレスを読み書きするケースが多かった。

もちろん全てマシン語なんていうのも結構あったぞ。
2006/06/14(水) 23:05:26
>>409
なるほどー。素早いレスありがとうございました。
2006/06/17(土) 00:36:09
>>408
ループが回る系の処理で、スプライトに対して場所&移動データを用意して一斉に動かすルーチンと
スプライトの当たり判定とかだけやらせてるってのもみた事あるな。
2006/06/17(土) 01:06:54
極まったのでは、水平帰線割り込みでカラーパレットやスプライトパターンテーブルを書き換えて、
スペックよりも色数やパターン数を多く見せるのもあった。
2006/07/03(月) 04:06:49
2006/07/20(木) 11:37:34
V&Zエディタの日本語表示のデカさは今でも覚えているぜ
2006/08/06(日) 00:13:53
>>414
目にやさしいマシンだったな…
416るぶ
垢版 |
2006/09/03(日) 21:30:56
MSXのBASICでロードランナーのような壁を表示させるにはどうしたらよいのでしょうか?
VPOKEを使っているみたいだけどよくわかりません
サンプルプログラムがあれば教えてください
417デフォルトの名無しさん
垢版 |
2006/09/04(月) 14:52:36
MSX-BASIC初心者の漏れがエミュレータ使いながら頑張って答えてみる。
VPOKE使うってことはVRAMを直接操作するって事ね。
VRAMのどの番地がどんな役割をもっているかは、多分Google検索でもすれば見つかると思う。

-- SCREEN1(32x24,TEXT)で座標(X,Y)にA(キャラクターコード&H41)を表示するには
VPOKE &H1800 + 32*Y + X, &H41

-- キャラクタコード&H41のキャラクタを再定義するには
VPOKE &H41*8+0, &B11111110
VPOKE &H41*8+1, &B11111110
VPOKE &H41*8+2, &B11111110
VPOKE &H41*8+3, &B11111110
VPOKE &H41*8+4, &B10111111
VPOKE &H41*8+5, &B10111111
VPOKE &H41*8+6, &B10111111
VPOKE &H41*8+7, &B10111111

SCREEN1したあとに上だけやればAが表示されて、
下をやるとAが再定義されたキャラクタに変わるはず。
Aを入力しようとしても再定義されたキャラクタが表示される。
あとはいろいろいじくってみて。

色を変える方法については目下勉強中。
2006/09/04(月) 18:12:01
つ【多色刷り】
2006/09/05(火) 02:35:48
多色刷り、最近始めた初心者だから何か新鮮な言葉に感じるぜーーー!
いろいろググりながら試してみたけど、BASICのみでやると準備が激しく遅いね。
あと、ちゃんとした資料が手元にない状態でいじるのは激しくつらい。
テクニカルハンドブックとかPDF化して販売してくれないかなぁ。
420るぶ
垢版 |
2006/09/05(火) 06:30:25
416の回答ありがとうございました
入力して確認とれました
421るぶ
垢版 |
2006/09/27(水) 20:37:43
MSXのBASICで8キャラスクロールをさせるには
どの命令文を使うのでしょうか?
2006/09/28(木) 14:56:15
自力
2006/09/30(土) 18:12:30
>>421
下スクロールなら、PRINT1個かますだけで楽なんだけどな…
2006/10/09(月) 20:19:31
>>421
左スクロール:
FOR I=&H1ADE TO &H1820 STEP -1:VPOKE I+1,VPEEK(I):NEXT

ベーシックからマシン語のスクロールルーチンを読み出すのが普通と思う。
21,DE,1A,01,9F,02,CD,4A,00,23,CD,4D,00,2B,2B,0B,78,B1,20,F2,C9
2006/10/09(月) 20:28:24
>>417
スクリーン1の場合、
FOR I=0 TO 255:VPOKE &H1800+I,I:NEXT
で全文字を画面に表示させ、

VPOKE &H2000,&HF1

と実行すると、色の変わるのが分かる。8文字ずつ文字色(F)+背景(1)で指定。

多色刷りモードの場合、1文字に8バイトで、文字の横列ごとに指定できる。
また、8行目まで・16行目まで・24行目までの3ブロックで別々に指定できる。

初心者は応援するぞ、ガンガレ。
2006/12/03(日) 23:05:13
このスレ開くとブラウザの行間がおかしくなるんだけど
なんで?
2006/12/04(月) 00:05:56
>>426
>>318が原因だろ
「シリア語ブラクラ」と呼ばれてる物
2006/12/04(月) 04:25:15
>>427
ありがとう
とりあえずl50で解決しますた
2007/01/29(月) 20:24:45
保守
2007/02/08(木) 01:45:09
保守
2007/02/12(月) 19:09:28
既出ならスマソ
MSXのBIOSはUNIXマシンで開発され
ソースコードは8進数で記述されていたことをご存知でしたか?
2007/02/12(月) 23:54:17
1チップMSX2が出たってのに相変わらず盛り下がってるな。
結局、割れ物のゲーム動かすだけで満足しちゃってるんだろうか。
2007/02/18(日) 11:47:39
保守
2007/02/24(土) 14:18:48
定期点検
2007/02/25(日) 00:02:00
すっかり忘れてた。
FPGAキットとして欲しかったけど、もう熱冷めた。
2007/02/25(日) 00:27:08
9800円のターボRに期待
437デフォルトの名無しさん
垢版 |
2007/03/26(月) 14:58:27
気が向いたんで1ChipMSXを買ってみたMSX初心者なんだが
グラフィック画面に文字を出力したいんだ。
で、書いてみたのが↓のプログラム。

10 screen2:cls:open"grp:"foroutputas#1
20 print#1,"Hello, MSX World"
30 i$=inkey$:ifi$=""then30

実行すると確かに文字は表示される事はされるんだが、実行する度に
表示位置が8ドットずつ下にずれていくんだ。なんでだろう?
printの時はlocateで出力位置指定できるけど、print#の時はどうしたらいいの?
2007/03/26(月) 21:12:47
>>437
確かグラフィック命令で使われる現在位置が流用されてて、
PSET とかで背景色で点を打って位置指定してたような気がする。
439デフォルトの名無しさん
垢版 |
2007/03/26(月) 22:32:50
15 PRESET (x,y),c
440デフォルトの名無しさん
垢版 |
2007/03/27(火) 11:18:28
お、ほぼ期待した通りの動作をした。
ありがとう。
441デフォルトの名無しさん
垢版 |
2007/03/27(火) 14:15:59
ロードランナー
2007/03/29(木) 12:10:27
_fmpac
エミュには大抵FMPAC.ROM付いてるから(公式は知らない)できるはず・・
2007/03/31(土) 17:31:38
そういやMSX FANにFinal Fantasy の戦闘時BGMをMSX-MUSICで再現した投稿はすげーと思った。
2007/03/31(土) 18:50:05
>>443
いわゆる耳コピができる人間なら容易いことだとは思うけどな。
確か音源も同じPSGでしょ?
2007/03/31(土) 19:27:51
>>444
>確か音源も同じPSGでしょ?

空気嫁。FMPAC≒MSX-MUSIC
446デフォルトの名無しさん
垢版 |
2007/03/31(土) 21:19:40
同じピコピコだけどね
2007/04/01(日) 16:11:51
ぜんぜん違う。
エミュしか知らねーんだろ。
448デフォルトの名無しさん
垢版 |
2007/04/01(日) 20:07:34
というか、なんで内蔵音源だけで再現できなかったんだろう?
どこにmsx-music使うの?ユーザ音色1色しか同時に使えないアホ音源。
449デフォルトの名無しさん
垢版 |
2007/04/01(日) 21:57:54
誘導されてきた者です。

実は、中学生の頃から疑問に思っていて、いまだに解けない問題があります。
それは、on sprite gosub命令で、どのスプライトとどのスプライトが衝突したのかを
サブルーチン内で判定する方法はないのでしょうか?ということです。

これができないことにはシューティングゲームが作れません。
だって自機と自機の玉と敵機と敵機の玉と何が何に衝突しても同じ処理になるからです。
2007/04/02(月) 00:24:02
どの種類のスプライトを移動したかを記憶しておく変数を用意して
ON SPRITE GOSUBで飛んだ先で、ON 変数 GOSUBで分岐。
分岐先で衝突しうるスプライトの座標を比較する。
とかじゃダメなの?
2007/04/02(月) 00:32:23
>>449
on sprite gosubで飛ぶサブルーチン側で、
当たったら処理しなきゃいけないスプライトを必死に探す。
449の例で言うなら自機と敵&敵の弾、自機の弾と敵について座標を比べまくって探すんだ。
それ以外が当たってるんだったら無視。

スピードが遅くなる?
そこは各自で工夫。
450の様に、動かしたスプライトについてだけ調べてみるとかも良い。
この判定処理を機械語ルーチン化するのは非常に有効な方法だ。
2007/04/02(月) 00:40:36
>>450-451
やはり用意された方法というのはなく、座標を探すということになるのですね。
参考になりました。本当にありがとうございました。
2007/04/03(火) 15:31:31
>>449

基本的に on sprite gosub は、処理ムラや処理が重くなる原因なので
使わない方がよい。
以下のようにすれば、使わなくても判定できる。

5 ' スプライト しょうとつはんていサンプル
10 X=100:Y=100'じぶん
20 TX(0)=50:TY(0)=70'てき0
30 TX(1)=105:TY(1)=92'てき1
100 '
110 FOR I=0 TO 1
120 IF ABS(X-TX(I))<16 AND ABS(Y-TY(I))<16 THEN PRINT"てき";I;"とせっしょくしました"
130 NEXT
140 END

>>451のように、機械語にするのは有効。
MSXでは機械語をサブルーチンのように呼び出せるので、
ベーシックの一部分を少しずつ機械語にしていくと良い。
2007/04/03(火) 19:11:19
最近始めた初心者がいるのが驚きです
なんのメリットが・・・
2007/04/03(火) 19:34:36
折角なので、機械語で簡単に組んでみた。F020Hに、衝突元のスプライト番号を入れて、機械語を実行すると
F000HからF01FHに、スプライト番号0〜31と衝突したかどうかが入る。
(0なら衝突していない、1なら衝突している) F021H、F022Hも作業領域として使用している。

5 ' スプライト ショウトツハンテイサンプル
6 'F000~F01F ニ スプライトガ ショウトツシテイルカドウカガ ハイル(1:ショウトツ シテイル)
7 '
8 DEFINT A-Z:CLEAR 3000,&HCFFF:SCREEN 1,2,0:KEY OFF:WIDTH 32:SPRITE$(0)=STRING$(32,255)
9 GOSUB 1000
10 X=100:Y=100'ジブン
20 TX(0)=50:TY(0)=70'テキ1
30 TX(1)=105:TY(1)=92'テキ2
40 PUTSPRITE 0,(X,Y),15,0
50 FOR I=0 TO 1
60 PUTSPRITE I+1,(TX(I),TY(I)),8,0
70 NEXT
80 POKE &HF020,0:A=USR(0):'F020ニ ハンテイモト ノ スプライトバンゴウ ヲ イレル
90 FOR I=0 TO 31:VPOKE 6144+32*10+I,PEEK(&HF000+I)+48:NEXT:END
1000 '
1010 FOR I=0 TO &H5E
1020 READ A$
1030 POKE &HD000+I,VAL("&H"+A$)
1040 NEXT
1050 DEFUSR=&HD000
1060 RETURN
1070 '
1080 DATA 3a,20,f0,87,87,26,1b,6f, cd,4a,00,32,21,f0,23,cd
1090 DATA 4a,00,32,22,f0,06,00,78, 87,87,26,1b,6f,cd,4a,00
1100 DATA 4f,3a,21,f0,b9,28,0e,30, 05,57,79,92,18,01,91,fe
1110 DATA 10,38,02,18,17,23,cd,4a, 00,4f,3a,22,f0,b9,28,10
1120 DATA 30,05,57,79,92,18,01,91, fe,10,38,04,1e,00,18,02,1e
1130 DATA 01,78,26,f0,6f,7b,77,04, 78,fe,20,20,b9,c9
2007/04/04(水) 12:15:17
DEFINTとかPUTSPRITEとか…
懐かしくもせつない響きのステートメント
457449
垢版 |
2007/04/04(水) 14:18:36
>>453
>>455
本当にすばらしいです。
目からうろこです。
今後の参考にしたいと思います。
本当にありがとうございました。
2007/04/04(水) 15:48:00
プログラムの入門用にいいのでは。
命令数が少なく覚えやすいし、インタプリタでエラーも分かりやすい。
機械語を覚えるにしても、さほど苦労しない。
枯れた技術だけど、資料はネットでも書籍でも手に入る。

エミュレータ(公式エミュが望ましいが)を使えば、世界も広がるし。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況