1read 100read
2012年6月プログラム534: MSX-BASICの奥義を伝授するスレ (762)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
いまだに LZH で配布してるヤツって何なの? (302)
MVVMについて語ろう (277)
クラス名・変数名に迷ったら書き込むスレ。Part21 (585)
IS<インフィニット・ストラトス>総合 (778)
C#終了のお知らせ (848)
WindowsDDK各種についてのスレ (734)
MSX-BASICの奥義を伝授するスレ
1 :01/11/25 〜 最終レス :12/01/02 忘れない内に皆に伝授しときましょう。 ・多色刷り、 ・ドット単位横スクロール、 ・エスケープシークエンス・・・ 色々ありましたよね。 思い出したらなんでも書き込みよろしく。
2 : とりあえず多色刷りの前振り 10 SCREEN1:WIDTH32:DEFUSR=&H7E:A=USR(0)
3 : PCG の弄り方忘れた。
4 : POKE(&HFDCC,119)
5 : ドット単位横スクロールはVDP命令を使うんだったよな。 SETADJUSTだと画面位置がバックアップされてしまうから。 でも肝心のVDP(N)のNの値が思い出せない。。。
6 : R#26 VDP(27) 画面の水平スクロール量 (High) R#27 VDP(28) 画面の水平スクロール量 (Low) 何故かあったM・FAN95年6月号より。 でも、もうVDPの弄くりかたも忘れたなあ。。。
7 : SPRITE$(0)="■♥♥♥♥♥♥■"
8 : A1-WX(WSX) クロック周波数アップ OUT 64, 8 OUT 65, 1 ちょっと、自信ない・・・
9 : OPEN"GRP"ほにゃららAS#1
10 : >>6 サンクス。 しかしこの情報を何に生かしたらよいのやら・・・w
11 : >しかしこの情報を何に生かしたらよいのやら・・・w (苦笑 まあ、うちのMSXはとっくの昔にぶっ壊れましたけど、TVに直接出せるし 一応持ち運べるし、A1GTならMIDIポートついてるし、なんかの時に何か の役にたつこともないことはないかも(いや、多分ないが(藁
12 : >>10 MSXエミュは結構いいのがいろいろ出てますぜ。 もっとも、実機もちゃんと持ってますが、いつ壊れるかわからんからな〜。 ひょっとすると、知らないうちに壊れてたりして。
13 : defusr=0:a=usr(0)
14 : >>9 ほにゃらら = FOR OUTPUT ?
15 : 家のMSX(A1ST)君はスペースキーが効きません、助けてアルゴマン!
16 : >>9 セミコロンが抜けてると思われ
17 : 実家にFDD2ドライブのMSX2+がありまっせ。
18 : >>12 実機をもってても、フロッピーの保管が大変じゃない? どんなに、厳重にしまっていても、3〜5年で壊れるでしょ。
19 : FS-A1Mk2だった。あのキーボードの押しにくさが忘れられない。
20 : >>8 out64,8:out65,0じゃないかな。 ASCATのテクニカルガイドではFS-A1WX/FX/WSXで使えるとある。 あと、BASIC ROMを覗いてDSKI$, DSKI$を発見して使ったはいいが、 ディスク壊してしまったこともあったなあ。
21 : リストを見れなくするのってどうやるんだっけ? たしか行番号のあたりに直接 最終行番号の値を書いちまう方法があったが どこの番地にナニを書けばいいか忘れた 実機があればリスト格納先頭番地からダンプするところだけど
22 : MSXのエロゲーは良かったなァ。 あの時代のエロゲーには現代にはない何かがあった・・・
23 : 俺は98時代の同人エロゲーに、現代にはない良さを感じる。
24 : >>21 TXTTAB(0F676H,2)の値+2と+3のアドレスにそれぞれ&HFFを書けばいいらしいな。 つーか、これも受け売りだけど(w あと>>20 はDSKI$, DSKO$な。DSKI$じゃディスク壊せん。
25 : そういやOPLLデータをmidiに変換するやつ作ったっけ。 Mファンのタイトル音楽を久々に聴く。なつかし。
26 : >>16 セミコロンじゃなく、コロンだと思われ。
27 : X=X+(STICK(6)=1)-(STICK(2)=1)+(X>39)-(X<0) 今なら普通に if で書くけどな。
28 : うわ〜、大間違いっス。 ホントは、こうね。 ' ジキ イドウ X=X+(STICK(0)=6)-(STICK(0)=2)+(X>39)-(X<0) 鬱だァァァァ。
29 : >>28 それも間違ってるぞ(w X=X-(STICK(0)=7)*(X>0)+(STICK(0)=3)*(X<39) が正解かと。 >+(X>39)-(X<0) にしちゃうと、端まで行った時に1ドット跳ね返るからね。 あとスティック関数値も間違いw
30 : >>27-29 配列使った方が読みやすいしスピードが少しはあがるんじゃない? なんでみんなこの方法を使ったんだろ。
31 : >>30 配列つかうと行数とメモリ使用量増えるから
32 : 1画面プログラムとか向けの手法だな>論理式
33 : >>31 なんとなくかっこいいからという理由もあったかも。
34 : 行番号0の行を作る ↓ LISTで表示 ↓ 表示された0行にカーソル移動 ↓ RETURNキー押す ↓ もう一度LIST ↓ 行番号直後の空白が1つ増える ↓ (゜д゜)バグー
35 : というワケで(?)、簡単にスカッシュを作ってみました(w (所要時間40分) 10 SCREEN1,0,0:WIDTH32:KEYOFF:COLOR1,14,1 20 X=112:BX=112:BY=4:MX=2:MY=2:SC=0 40 FOR J=0 TO 23:PRINT"########## ##########";:NEXT J 60 SPRITE$(0)="" 70 SPRITE$(2)="タタ" 80 REM =========ball move===== 90 BX=BX+MX:BY=BY+MY 100 MX=MX*((BX=78)*2+1)*((BX=174)*2+1) 110 PUTSPRITE2,(BX,BY),1 120 REM =======key input======== 130 T=STRIG(0) 140 X=X-(T=0)*(X>78)+(T=-1)*(X<166) 150 PUTSPRITE0,(X,160),1 160 REM =======judge========= 170 IF BY=158 AND BX>X-1 AND BX<X+9 THEN MY=-2:SC=SC+1 180 IF BY=170 THEN 220 190 IF BY=2 THEN MY=2 200 GOTO 90 210 REM ===========game over======= 220 PRINT"SCORE=";SC*10:FOR I=0 TO 500:NEXT 230 FOR I=0 TO 1:I=-STRIG(0):NEXT I:GOTO 10 Ruでのみ動作確認してます。 (まぁ、動作確認とるまでもないショボプログラムだがw) ちなみに最後の までを含めたリストをメモ帳等にコピってSAVEした後、 そのTXTファイルをDISK-manegerでDSKイメージに突っ込んでsaveすれば、 いちいちプログラムを入力しなくてもOKなんで楽チンです。
36 : >>35 こんな時間になにやっとるんだ(藁 オレモナー
37 : 補足 またエミュ上でプログラムをアスキーセーブすれば(save"*****.bas",a) Win上でプログラムの閲覧、編集等ができます。 手順は、そのプログラムを・・・ ・DISK-MANEGERでEXTRACTを選択してデスクトップ等に出す。 ・拡張子をTXTに変更 ・メモ帳で開く という手順です。 その際プログラム末尾に” ”が付きますが、 これはアスキーセーブを有効にする為に必要なので削除しないで下さい。
38 : >>36 ぐは!ソレは突っ込まないで・・・(w
39 : おぉ!! つー事は2chで簡単な自作プログラムの公開なんかもできるワケですな! まぁ、漏れは公開するようなブツは持ち合わせてないんダガナ…(藁 皆さんの日の目を見なかった作品のうpをキボンしてよいですか?
40 : ところで>>35 のプログラムの40行は ###と###の間に12個のスペースが入ると解釈してよいんですね? そうしないとワケワカラン画面になりましたぜ〜。
41 : つーかムズ過ぎ! ラリー10回すら続かない… 鬱駄氏脳
42 : ファンダムの1画面モノとか勝手に2chに載せたらズイマーかなー? 著作権関係の問題ってやっぱあるよなー。
43 : Disk-Managerってなんじゃらホイ?
44 : >>42 時効。気にすんな。
45 : 今ごろMSXPGで著作権を気にする奴はいないだろ
46 : >>43 ココを読むべし。 ttp://www.msxnet.org/gtinter/diskmgrj.htm
47 : >>44 >>45 いや、でも著作権云々よりも、作者さんが気分悪くしたりしねーの? (俺ならむしろ嬉しいけどネ)
48 : age Syntax error Ok ■
49 : 先生!暴走してます、カーソルが点滅していません
50 : >49 先生! MSXはカーソル点滅しないと思います!
51 : VDPコマンドとか、懐かしいフレーズだけど、全部忘れちゃったよ。 実家に帰れば、MSXテクニカルハンドブックがまだあるかな。 あのころは、3500円が激高価におもえたよ(リアル厨房だったし)。 いまなら、専門書で3500円ならやすい!とおもうが。
52 : Illegal function call in >>49
53 : MSXは凄いぜ! なんたって、カーソルが斜めに動ける。
54 : >>53 3つ以上のキーを押しても マトリクス上不都合なければいくらでも キーリピートが可能だったのは 優秀な設計の証なのか 優れた手抜きなのか
55 : コスト削減のためとか
56 : M5の方がずーーーっといいのにな 40桁表示だし グラフィック画面とテキスト画面は独立しているし カーソルが点滅しているし Z80CTCを積んでるし VDPの使い方がアンポンタンだぞ>>MSX
57 : >>56 アンポンタンぶりが却って良い結果を生んでたと思う。
58 : >>56 MSXにも40桁の表示モード(VDPのTEXT1モード)はあるよ。 あと、MSX2以降なら80桁の表示モード(VDPのTEXT2モード)もある。 ※MSXクリエイターズガイドブックで確認
59 : なんかどうにかして 25行表示にすることってできなかったですかね 勘違いかな・・・
60 : まあ、MSXのVDPがクソなのは何を置いても認めよう。
61 : >>60 でもあれってぴゅう太にも使われてるし 安くて安定してて使いやすくて 適当に使う分にはそこそこ速い 妥協するポイントとしてはまあ良かったんじゃないかな?
62 : >>59 POKE &HF3B1,25
63 : >>61 ぴゅう太に使われてるってのは評価する所じゃなかろう(藁 個人的にはスピードに不満があるなぁ、やっぱり。
64 : >>63 あれってさ、VDPに命令投げたらあとはほったらかしでオッケーじゃん だからCPUも遅かったからそこだけマルチタスクって感じで よかったんじゃないかなぁ? と適当なことを言ってみる
65 : ヤフーオークションで、凄い人気商品、発見!!! コピーガードキャンセラー↓ http://page2.auctions.yahoo.co.jp/jp/auction/b18032656 注目のオークションに適用される事、 間違いないですね。 私も買いました。 皆も買いましょう。
66 : >>64 もちろんそういう面で便利な代物なんだけど、あのVDPに まかせると結構遅くなってしまうんですよ。
67 : Z80のアセンブラ表にない隠し命令ってどこまで発見されてましたっけ?
68 : >>67 隠し命令とは、初耳。
69 : >>68 http://www.geocities.com/SiliconValley/Peaks/3938/z80undoc.htm 全部かどうかは知らない。けど、turboRのR800では「正式」な命令になったはず。
70 : 10 'MSX物理的劣化プログラム(MSX,MSX2,MSX2+用) 20 'このプログラムは決して実機で動かさないで下さい。 30 ON STOP GOSUB 60 40 STOP ON 50 MOTOR:GOTO 50 60 RETURN
71 : >>70 ミシンだな。
72 : >>70 ガガガガガガ・・・・ フォーラムでは禁じ手でしたね。
73 : そういえばMOTOR使ったお遊びプログラムを店頭展示マシンで実行してたな。 何かキーを押すと始動か時限式かで(w
74 : >>73 こんな感じ? A$=INPUT$(1):FOR I=0 TO 1:I=0:MOTOR:NEXT TIME=0:FOR I=0 TO 10000:I=TIME:NEXT:FOR I=0 TO 1:I=0:MOTOR:NEXT
75 : 10 CLEAR:DIM SX(8),SY(8),TX(9),TY(9) 20 RESUME 30:FOR A=1 TO 8:READ SX(A),SY(A):NEXT 30 RESUME 40:FOR A=1 TO 9:READ TX(A),TY(A):NEXT 40 DATA 0,-1,1,-1,1,0,1,1,0,1,-1,1,-1,0,-1,-1 50 DATA -1,1,0,1,1,1,-1,0,0,0,1,0,-1,-1,0,-1,1,-1 60 X=X+SX(STICK(0))+TX(VAL(INKEY$)) 70 Y=Y+SY(STICK(0))+TY(VAL(INKEY$)) ジョイスティックの番号あってるかな?ちと自信無し。 上が1だったらこれで動く・・・はず。誰か検証して。
76 : 奥義 1 'CSAVE "TEST.BAS"
77 : >40 DATA 0,-1,1,-1,1,0,1,1,0,1,-1,1,-1,0,-1,-1 >50 DATA -1,1,0,1,1,1,-1,0,0,0,1,0,-1,-1,0,-1,1,-1 MSX-FANに載ってたシューティングの自機移動速度が遅かったので バイナリで上のテーブル見つけ出して書き換えたことがあるな。
78 : あの頃ってファンダムの影響で行番号を1行刻み、コロンでひたすらネスト っていう書き方のプログラムばっかだったな(藁
79 : >>77 「バイナリで」ってどういう意味?
80 : >>79 「左右から雌雄のペンギンで挟み込んで」の意
81 : バイナリーランドかよ!
82 : バシシのほうがイイ
83 : >>79 機械語のゲームだったのだ。
84 : がんばれ、ゲイツ君 むかしから中村さんって気に入らなかったんだけど よくよんでたらこの人、MSXを馬鹿にしまくってるのな。 頃すぞ! と思った夕食時でした
85 : 中村さんってなんだ? 間違えたよ宇津田詩嚢
86 : >85 まあトノサキって中村のコピーみたいなもんだし
87 : 中村さん? なんのこと?(what's?)
88 : >>77 2進数 >>ALL UBASICでAUTOでプログラムリストを書いてその後そこから出る方法 教えて下さい。
89 : UBASIC?
90 : >>89 二千数百桁までの数値が使えるPC-98やDOS/V用のBASICだよ。 まぁ、このスレとは関係ないけど。 ちなみに、MSX-BASICの浮動小数点型の内部表現は 10進で持ってるんだよね。 だから、他の大多数のマシンでは浮動小数点値を 内部では2進で値を持ってる。だから、 FOR I= 0.1 TO 1 STEP 0.1:NEXT I とやると無限ループになるけどMSXではちゃんと10回回って抜ける。 #無限ループするのは0.1を2進数で表すと循環小数になるので #切捨て誤差が発生して10回足してもきっちり1にはならない為。 この辺は直感に反しないし、変な誤差も出ないから良いよね。
91 : 昔のPC板ができております。おいでませい。 http://pc.2ch.net/i4004/
92 : ここまで、DEFINTが1度ものってないなんて・・・
93 : DEFINTA -Z です。
94 : DEFSTRってFM音楽館(だっけ?)のプログラムで良く使われてたよね。 $無しの変数に文字列入ってたのにはカナーリビクーリしたよ。
95 : @Niftyでは、MSX-BASICで年賀状作るコーナーがあったな。 そろそろ干支が1周して再利用できるようになる、かも。
96 : 保全sage
97 : TurboRのMIDI関係の命令が解りません。 何処かに資料は無いでしょうか? 最近、MSXユーザーになったばかりであります。
98 : >>97 こっちの掲示板で聞いた方がいいよん。 http://www.baboo.net/
99 : エミュってキーボードのエミュレーションに不具合があるの? なんか打ち込めない文字があるんだけど。
100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
D言語 Part29 (763)
Java⇔RDBのMapping-Frameworkを語るスレ Vol.5 (933)
Lisp Scheme Part34 (659)
インテルC++コンパイラ9.0発表! (582)
Squeakでマターリ語りましょうや (812)
【Lua】組み込み系言語総合 その5【Squirrel】 (596)
--log9.info------------------
ヒトカラするきっかけって何? (500)
KOKIAを歌う (474)
【下げて】単なる高音に価値はない-2キー目【解決!】 (601)
COMPLEX Part.70 (620)
【脱】瓜田純士 Part1【アウトロー】 (456)
【真】第一・第二期WANDS/al.ni.co統一スレッド (309)
【愛が】爆風スランプvol.6【いそいでる】 (448)
松岡英明2 (950)
ラルク vs BOOWY 6 (625)
真島昌利Part24 〜ひねもすのたりとりあえず〜 (700)
尾崎豊(笑) part29 (669)
川´3`) 山下達郎ライブを語るスレ #3【ネタバレ】 (909)
我孫子神音会&ヘドロ (324)
クールス17 (560)
「伝説・現在休止中」ムーンライダーズPart25 (941)
ハイスタはもう伝説だろ?? (780)
--log55.com------------------
天使の里 その33
女性芸能人人形【紀香・うの・叶姉妹など】
リカちゃん総合スレ その18
ドルフィードリーム質問スレ16その2
人形に本気で恋したことあります?その21
【サンリオ】シナモロールをマターリと語るスレPart19【シナモン】
【SD用】オークションに出してとおながいするスレ35
☆大人気DDアイドルマスター ver2★