忘れない内に皆に伝授しときましょう。
・多色刷り、
・ドット単位横スクロール、
・エスケープシークエンス・・・
色々ありましたよね。
思い出したらなんでも書き込みよろしく。
探検
MSX-BASICの奥義を伝授するスレ
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
NGNG726デフォルトの名無しさん
2010/09/20(月) 22:07:45727デフォルトの名無しさん
2010/09/21(火) 18:13:45 そろそろ奥義をみせてくださいよw
728デフォルトの名無しさん
2010/09/21(火) 18:14:58 せっかく伝授したのに・・・
729デフォルトの名無しさん
2010/09/21(火) 19:04:37 なにを?だれに?いつ?どこで?どのように?
730デフォルトの名無しさん
2010/09/22(水) 11:03:53 スレ読め
731デフォルトの名無しさん
2011/01/19(水) 00:03:04 VDPの性能がファミコンのリアルタイム性に遠く及ばなかったのが
敗因だよなぁ
敗因だよなぁ
732デフォルトの名無しさん
2011/01/19(水) 01:31:51 >VDPの性能がファミコンのリアルタイム性に遠く及ばなかったのが
背景とスプライトの色表現力で負けてるから
リアルタイム性は9918の方があるよ、ファミコンはDMAでVSYNC中に300バイト程度しか送れない
背景とスプライトの色表現力で負けてるから
リアルタイム性は9918の方があるよ、ファミコンはDMAでVSYNC中に300バイト程度しか送れない
733デフォルトの名無しさん
2011/01/21(金) 18:48:19 あんな表現力でリアルタイム性だけ勝っててもねえ。
比較するならせめて 9938 だろ。
比較するならせめて 9938 だろ。
734デフォルトの名無しさん
2011/03/27(日) 20:22:50.35 10 print "名無し"
20 goto 10
end
20 goto 10
end
735デフォルトの名無しさん
2011/03/27(日) 20:45:46.03 10 POKE RND(1) * 65535, RND(1) * 255
20 GOTO 10
20 GOTO 10
736デフォルトの名無しさん
2011/03/27(日) 21:29:49.27 >>735
RNDって、0〜1未満じゃなかったっけ? で、RND(1) * 65536, RND(1) * 256 じゃない?
あと、BASIC上にいるときは、上32KBはROMだから、 RND(1)*32768+32768 じゃない?
RNDって、0〜1未満じゃなかったっけ? で、RND(1) * 65536, RND(1) * 256 じゃない?
あと、BASIC上にいるときは、上32KBはROMだから、 RND(1)*32768+32768 じゃない?
737デフォルトの名無しさん
2011/03/27(日) 22:10:50.35 >>736
ROMに書き込んでどうすんの?
ROMに書き込んでどうすんの?
738デフォルトの名無しさん
2011/03/27(日) 22:12:53.58 上って0番地側か
ずっと8000H〜ffffHがROMだと思ってた
ずっと8000H〜ffffHがROMだと思ってた
739デフォルトの名無しさん
2011/03/27(日) 22:16:45.58740デフォルトの名無しさん
2011/03/27(日) 23:00:10.88 どうでもいいけど、「上」ってffffH寄りじゃないのか?
741デフォルトの名無しさん
2011/03/27(日) 23:15:54.84 コードやデータを読むとき上から下にたどっていくって感覚だと先頭に近いほうのアドレスが上になる
742デフォルトの名無しさん
2011/03/28(月) 01:07:40.20743デフォルトの名無しさん
2011/04/24(日) 04:46:57.82 数々のMSBASICがあるなかでMSX-BASICは最低だったね
こういう事言うと必ず信者が噛み付いてくるけど
事実は事実として歪曲することなく認めないとね
まぁ今更なんだけど使っていた奴に同情するよ
反論があればよろしく
↓
こういう事言うと必ず信者が噛み付いてくるけど
事実は事実として歪曲することなく認めないとね
まぁ今更なんだけど使っていた奴に同情するよ
反論があればよろしく
↓
744デフォルトの名無しさん
2011/04/24(日) 17:36:13.80 何が最低なのかも書かないってのはアタマの悪い証拠にしかならんぞ
745デフォルトの名無しさん
2011/04/24(日) 19:00:24.62 だってアホやもん
746デフォルトの名無しさん
2011/04/24(日) 19:20:25.66 前スレから1ヶ月あいてるのに… もう一ヶ月放置しといたら独り相撲だったのに…
747デフォルトの名無しさん
2011/04/24(日) 19:21:10.88 ×前スレ
○前レス
やっちまったーい。
○前レス
やっちまったーい。
748デフォルトの名無しさん
2011/06/23(木) 00:29:54.64 10 'LND712を仮定しGM管のパルス数(CPM)からシーベルト(uSv/h)へ単位変換
20 input "cpm";a
30 print a/108;"uSv/h"
10 '毎時の放射線量から一年間累積した時の実効線量を求める
20 input "uSv/h";a
30 print a*24*365;"uSv"
20 input "cpm";a
30 print a/108;"uSv/h"
10 '毎時の放射線量から一年間累積した時の実効線量を求める
20 input "uSv/h";a
30 print a*24*365;"uSv"
749デフォルトの名無しさん
2011/06/23(木) 00:47:25.30 ガイガーカウンタのパルスをジョイスティックポート等に入力し、パルスをカウントすればデジタル方式の。
ガイガーカウンタになる。一分間のパルス数を計数したものがCPM。
シーベルトへ単位変換する際には、ガイガーカウンタがγ線のみを検出している事を前提とする。
ガイガーカウンタに金属製のシールドがしてあれば、ほぼγ線を検出していると考えられる。
このガイガーカウンタの値に対して時間累積すると線量計となる。1uSv/hの場所に4時間居れば1*4=4uSv。
線量計は累積した放射線量。年間20mSvという表現は、この線量計の一年間累積した値を示している。
ガイガーカウンタになる。一分間のパルス数を計数したものがCPM。
シーベルトへ単位変換する際には、ガイガーカウンタがγ線のみを検出している事を前提とする。
ガイガーカウンタに金属製のシールドがしてあれば、ほぼγ線を検出していると考えられる。
このガイガーカウンタの値に対して時間累積すると線量計となる。1uSv/hの場所に4時間居れば1*4=4uSv。
線量計は累積した放射線量。年間20mSvという表現は、この線量計の一年間累積した値を示している。
750デフォルトの名無しさん
2011/08/26(金) 13:54:23.16 復元
751デフォルトの名無しさん
2011/11/26(土) 11:41:35.37 また復元
752デフォルトの名無しさん
2011/11/29(火) 11:09:43.44 Xbox360/XNAで動くMSX-BASIC互換アプリってないの?
753デフォルトの名無しさん
2011/12/01(木) 20:25:30.78 裏レジスタは癖が強くて使えない
754デフォルトの名無しさん
2011/12/02(金) 19:29:22.07 裏レジスタは頭が弱くて使えない
755デフォルトの名無しさん
2011/12/02(金) 20:01:07.80 IRQ処理で頻繁に使う者だとおもってた
756デフォルトの名無しさん
2011/12/17(土) 14:53:45.63757デフォルトの名無しさん
2011/12/19(月) 13:42:33.16758デフォルトの名無しさん
2011/12/19(月) 13:56:45.47 おい、なんかマジっぽいレスしてる奴がいるぞ
759デフォルトの名無しさん
2011/12/19(月) 14:18:03.31 そこは「マジレスしてる奴がいるぞ」にしとけ
「マジっぽいレス」だと理解不足なのが丸バレで757が図に乗るぞ
真面目な奴ほどキれると暴れるから荒れるのはカンベン
「マジっぽいレス」だと理解不足なのが丸バレで757が図に乗るぞ
真面目な奴ほどキれると暴れるから荒れるのはカンベン
760デフォルトの名無しさん
2011/12/19(月) 14:48:29.85 >>759
もしかしたら俺の理解できないボケかもしれないので、少し逃げた。
もしかしたら俺の理解できないボケかもしれないので、少し逃げた。
761デフォルトの名無しさん
2011/12/26(月) 17:26:33.06 少し逃げたね。
762デフォルトの名無しさん
2012/01/02(月) 17:57:05.98 うん、少し逃げたね
763デフォルトの名無しさん
2012/09/03(月) 01:32:23.10 >2012年 9月 2日(日) 13:00〜
>MSX30周年が来年だと思ったら、ミナカンも今年15周年だった...
ふーん、よくやるね(呆…
>MSX30周年が来年だと思ったら、ミナカンも今年15周年だった...
ふーん、よくやるね(呆…
764デフォルトの名無しさん
2012/10/09(火) 14:29:01.18 ∧_∧
( ・∀・) 人 ガッ
( つ―-‐-‐-‐-‐-‐○ < >__Λ∩
人 Y ノ. V`Д´)/
し(_) / ←>>269
( ・∀・) 人 ガッ
( つ―-‐-‐-‐-‐-‐○ < >__Λ∩
人 Y ノ. V`Д´)/
し(_) / ←>>269
766デフォルトの名無しさん
2013/02/06(水) 13:34:07.37 序破急(じょは きゅう)
767デフォルトの名無しさん
2013/02/06(水) 13:35:36.64 奥義(おくぎ)
奥義(おうぎ)
奥義(おうぎ)
768デフォルトの名無しさん
2013/02/24(日) 07:48:22.15 どんだけ過疎ってんだよ。お前らのMSXに対する愛はそんなものか!
769デフォルトの名無しさん
2013/02/24(日) 15:59:45.43 愛ってなんだ
770デフォルトの名無しさん
2013/02/24(日) 16:11:01.59 振り向かないことさ
771デフォルトの名無しさん
2013/02/24(日) 18:10:28.96 え?じゃあ若さって何だ?
772デフォルトの名無しさん
2013/02/24(日) 23:10:39.51 アキムカないことさ
773デフォルトの名無しさん
2013/03/02(土) 13:35:36.02 MSXFANの1画面プログラムは色々とマニアックなことが書いてあったな
STOPキー押すまで入力待ちとかあったような
STOPキー押すまで入力待ちとかあったような
774デフォルトの名無しさん
2013/05/25(土) 02:05:38.26 なつかしい。昔ログインにゲーム投稿してお金貰ったわ
775デフォルトの名無しさん
2013/09/27(金) 09:13:12.19 保守
776デフォルトの名無しさん
2013/10/21(月) 19:41:55.44 ttp://pbs.twimg.com/media/BW4WQ-xCYAAnxN0.png
777デフォルトの名無しさん
2013/10/22(火) 12:49:05.01 バカな!
しかし、パッケージは紛れもなく本物……ッ!!
しかし、パッケージは紛れもなく本物……ッ!!
778デフォルトの名無しさん
2013/10/22(火) 17:25:20.94 MSXちゃうやん
779デフォルトの名無しさん
2013/10/22(火) 20:38:30.87 その人何の技術もないからフェイクしかできないでしょ
780デフォルトの名無しさん
2013/10/23(水) 12:32:15.62 奥義伝承の儀とかやらんの?
781デフォルトの名無しさん
2013/10/23(水) 15:20:38.16 >>776
MSXじゃなくてPC6Kシリーズじゃねぇか!!!
MSXじゃなくてPC6Kシリーズじゃねぇか!!!
782デフォルトの名無しさん
2013/10/24(木) 08:23:50.03 キーボードはパピコンだけど、こんなにカラフルで高精細な画面モード無いし
783デフォルトの名無しさん
2013/11/16(土) 07:44:01.61 画面だけエミュで映し出してるな
784デフォルトの名無しさん
2013/11/16(土) 07:52:01.86785デフォルトの名無しさん
2013/11/16(土) 08:26:02.58 元ベーマガスタッフキタ━━ヽ(゚∀゚)ノ━━!!!!
786デフォルトの名無しさん
2013/12/05(木) 21:10:30.52 でもプログラム末尾にDATA文で並べるより
使ってる近辺に書いたほうが分かりやすいよね今考えれば
使ってる近辺に書いたほうが分かりやすいよね今考えれば
787デフォルトの名無しさん
2013/12/06(金) 00:21:13.46 エディタがまともならな
788デフォルトの名無しさん
2014/01/03(金) 00:28:03.71 データとプログラムは分離されてた方が訂正するのは楽かな。
どうせ構造や意味は開発資料としてメモしておくでしょ。
どうせ構造や意味は開発資料としてメモしておくでしょ。
789デフォルトの名無しさん
2014/01/03(金) 14:41:05.34 配列の定義だから、DIMのことだろう
790デフォルトの名無しさん
2014/02/06(木) 03:33:44.69 あれだけいろいろ作ってたのに今見たらもうBASIC読めないな。
配列の確保ってその行の実行時だったけ?
配列の確保ってその行の実行時だったけ?
791デフォルトの名無しさん
2014/02/06(木) 08:37:37.66 10個ぐらいだったら宣言しなくても使えたような気がする。忘れた。
そういうデフォルト設定や裏技を極限まで使いこなすのが「テクニック」だったよなあ。
今ではクソコードに分類されるけど。
そういうデフォルト設定や裏技を極限まで使いこなすのが「テクニック」だったよなあ。
今ではクソコードに分類されるけど。
792デフォルトの名無しさん
2014/02/06(木) 12:11:32.90793デフォルトの名無しさん
2014/02/06(木) 13:29:46.17 >>790
時間があまりにも過ぎてるからじゃね?
俺もマシン語・アセンブラでバリバリやってて
ハードウェアの隅から隅まで知っていたつもりだけど
今じゃ何も思い出せないなw
まあ資料見ればすぐに思い出せるだろうけど
さすがに全く触らなくなってから時間が経ち過ぎてる
時間があまりにも過ぎてるからじゃね?
俺もマシン語・アセンブラでバリバリやってて
ハードウェアの隅から隅まで知っていたつもりだけど
今じゃ何も思い出せないなw
まあ資料見ればすぐに思い出せるだろうけど
さすがに全く触らなくなってから時間が経ち過ぎてる
794デフォルトの名無しさん
2014/02/06(木) 13:41:28.12 てきとーに配列に数値をぶち込むものを書いてみる。
10 DIM A(100)
20 CLS
30 FOR I=0 TO 100
40 A(I)=I
50 LOCATE 0,0:PRINT I
60 NEXT
10行がないと、I=10 の時点でエラーになるな。
10 DIM A(100)
20 CLS
30 FOR I=0 TO 100
40 A(I)=I
50 LOCATE 0,0:PRINT I
60 NEXT
10行がないと、I=10 の時点でエラーになるな。
795デフォルトの名無しさん
2014/02/07(金) 05:57:15.58 ワ、ワタシハタダシイ
796デフォルトの名無しさん
2014/02/13(木) 22:37:49.35 読める、読めるぞ〜、インストラクション表を片手に
しかしコードの真意は書いた本人にしかわからない
数年後には書いた本人にもわからない古文書となる
しかしコードの真意は書いた本人にしかわからない
数年後には書いた本人にもわからない古文書となる
797デフォルトの名無しさん
2014/02/16(日) 12:25:00.81 DarkBASIC Pro Freeで最新技術を誰よりも早く習得 - VC++プログラマーより情報が早い
- DarkBASIC Professional - FREE Download(英語版のみ)
[ http://www.thegamecreators.com/?m=view_product&id=2000&page=free ]
[ http://www.thegamecreators.com/?m=download&file=5003 ]
U77 Public Release Candidate(最新バージョンアップデート)
[ http://forum.thegamecreators.com/?m=forum_view&t=180294&b=1 ]
[ http://files.thegamecreators.com/darkbasicprofessional/upgrade/dbpro_upgrade_7_7_RC7.zip ]
- DarkBASIC Professional - FREE Download(英語版のみ)
[ http://www.thegamecreators.com/?m=view_product&id=2000&page=free ]
[ http://www.thegamecreators.com/?m=download&file=5003 ]
U77 Public Release Candidate(最新バージョンアップデート)
[ http://forum.thegamecreators.com/?m=forum_view&t=180294&b=1 ]
[ http://files.thegamecreators.com/darkbasicprofessional/upgrade/dbpro_upgrade_7_7_RC7.zip ]
798デフォルトの名無しさん
2014/02/16(日) 12:26:25.19 今回紹介するのはDarkBASIC Professinalフリーバージョン。
商用利用をしないと言う条件ですべての機能が使える。
DarkBASIC本体をダウンロードしたら、メールアドレスを送信してアンロックキーをメール受信する。
次にメールアドレスとアンロックキーをアクティベーション(認証)すればDarkBASICが使えるようになる。
さらに、最新バージョンアップデートを適用すれば、実行速度が高速になる。
DarkBASICはVisualBasic以前の古いBASICの延長上の別系統の設計にある最新BASICで、記述
が簡単で本格的な構造化もサポートしている。
簡単なゲームから大規模プロジェクトまで作成可能だ。
また、外部モデリングフォーマットを通さずにプログラム中で3Dオブジェクトの定義も可能で、非常に自由度
の高いプログラミングができる。
英語版と言うことであるが、BASICと3Dの基礎知識があれば、誰でも使える。
商用利用をしないと言う条件ですべての機能が使える。
DarkBASIC本体をダウンロードしたら、メールアドレスを送信してアンロックキーをメール受信する。
次にメールアドレスとアンロックキーをアクティベーション(認証)すればDarkBASICが使えるようになる。
さらに、最新バージョンアップデートを適用すれば、実行速度が高速になる。
DarkBASICはVisualBasic以前の古いBASICの延長上の別系統の設計にある最新BASICで、記述
が簡単で本格的な構造化もサポートしている。
簡単なゲームから大規模プロジェクトまで作成可能だ。
また、外部モデリングフォーマットを通さずにプログラム中で3Dオブジェクトの定義も可能で、非常に自由度
の高いプログラミングができる。
英語版と言うことであるが、BASICと3Dの基礎知識があれば、誰でも使える。
799デフォルトの名無しさん
2014/03/12(水) 07:21:04.94ID:9nRIvxt0 Mファン1990年9月号に掲載された1行プログラム(システム上の1行、の意)
「200年カレンダー」
(万年カレンダーから100年毎の閏年判定ルーチンを除いたもの、
1900年3月1日〜2100年2月28日に対応)
#SCREEN1:WIDTH29(以上)で実行すること
1 CLS:INPUT"年,月";Y,M:Y=(Y+4)MOD28:J=YMOD4:D=(Y\4)*5-(J>0)+J
:FORI=1TOM:D=(D+X)MOD7:READX:X=X+(I=2)*(J=0):NEXT:PRINT:PRINT
SPC(D*4);:FORI=1TOX+28:PRINTUSING" ## ";I;:A=D=6:A$=CHR$(A*-10)
+CHR$(A*-13):PRINTA$;A$;:D=(D+1)MOD7:NEXT:DATA3,,3,2,3,2,3,3,2,3,2,3
「200年カレンダー」
(万年カレンダーから100年毎の閏年判定ルーチンを除いたもの、
1900年3月1日〜2100年2月28日に対応)
#SCREEN1:WIDTH29(以上)で実行すること
1 CLS:INPUT"年,月";Y,M:Y=(Y+4)MOD28:J=YMOD4:D=(Y\4)*5-(J>0)+J
:FORI=1TOM:D=(D+X)MOD7:READX:X=X+(I=2)*(J=0):NEXT:PRINT:PRINT
SPC(D*4);:FORI=1TOX+28:PRINTUSING" ## ";I;:A=D=6:A$=CHR$(A*-10)
+CHR$(A*-13):PRINTA$;A$;:D=(D+1)MOD7:NEXT:DATA3,,3,2,3,2,3,3,2,3,2,3
800799
2014/03/14(金) 03:44:10.36ID:Dt0a1Iuk 799の「200年カレンダー」を、Windows用の「99Basic」向けに作り直した
(「移植」とは呼べない。文字化けを除けばMSXでも動く。論理式を追放した。)
100 CLS
110 INPUT "年(1900〜2100),月 ";Y,M
120 IF Y<1900 OR Y>2100 OR M<1 OR M>12 THEN RUN
130 YY=Y:Y=(Y+4) MOD 28
140 J=Y MOD 4:D=INT(Y/4)*5+J
150 IF J>0 THEN D=D+1
160 IF YY=1900 THEN D=1
170 X=0
180 FOR I=1 TO 12
190 IF I<=M THEN D=(D+X) MOD 7
200 READ X
210 IF I=2 AND J=0 THEN X=1
220 IF (YY=1900 AND I=2) OR (YY=2100 AND I=2) THEN X=0
230 IF I=M THEN XX=X+28
240 NEXT
250 PRINT:PRINT
260 FOR I=1 TO 7
270 READ A$:PRINT " ";A$;" ";
280 NEXT
290 PRINT:PRINT:PRINT SPACE$(D*4);
(続く)
(「移植」とは呼べない。文字化けを除けばMSXでも動く。論理式を追放した。)
100 CLS
110 INPUT "年(1900〜2100),月 ";Y,M
120 IF Y<1900 OR Y>2100 OR M<1 OR M>12 THEN RUN
130 YY=Y:Y=(Y+4) MOD 28
140 J=Y MOD 4:D=INT(Y/4)*5+J
150 IF J>0 THEN D=D+1
160 IF YY=1900 THEN D=1
170 X=0
180 FOR I=1 TO 12
190 IF I<=M THEN D=(D+X) MOD 7
200 READ X
210 IF I=2 AND J=0 THEN X=1
220 IF (YY=1900 AND I=2) OR (YY=2100 AND I=2) THEN X=0
230 IF I=M THEN XX=X+28
240 NEXT
250 PRINT:PRINT
260 FOR I=1 TO 7
270 READ A$:PRINT " ";A$;" ";
280 NEXT
290 PRINT:PRINT:PRINT SPACE$(D*4);
(続く)
801799
2014/03/14(金) 03:58:27.59ID:Dt0a1Iuk 300 FOR I=1 TO XX
310 PRINT USING" ## ";I;:D=D+1
320 IF D=7 THEN D=0:PRINT:PRINT
330 NEXT
340 PRINT
350 IF D>0 THEN PRINT:PRINT
360 END
370 DATA 3,0,3,2,3,2,3,3,2,3,2,3
380 DATA "日","月","火","水","木","金","土"
主な修正点:1900年1・2月と2100年3月〜12月も表示できるように。
・MSXで実行するときの注意点
110行のINPUT文・380行のDATA文にある「年」「月」「火」などの全角文字、
場合によっては270行の曜日前後にある空白を修正する必要がある。
・MSXの漢字BASICで実行するときの注意点
最低でも100行を「100 _CLS」に修正する必要がある。
インターレスモード〜_KANJI2・_KANJI3でないと、上部が強制スクロールされる。
画面がちらつかない_KANJI・_KANJI1で実行するときは、改行の「PRINT」を削除する、
最後にINPUT$(1)やIF INKEY$="" THEN を加えるなどの工夫が必要。
310 PRINT USING" ## ";I;:D=D+1
320 IF D=7 THEN D=0:PRINT:PRINT
330 NEXT
340 PRINT
350 IF D>0 THEN PRINT:PRINT
360 END
370 DATA 3,0,3,2,3,2,3,3,2,3,2,3
380 DATA "日","月","火","水","木","金","土"
主な修正点:1900年1・2月と2100年3月〜12月も表示できるように。
・MSXで実行するときの注意点
110行のINPUT文・380行のDATA文にある「年」「月」「火」などの全角文字、
場合によっては270行の曜日前後にある空白を修正する必要がある。
・MSXの漢字BASICで実行するときの注意点
最低でも100行を「100 _CLS」に修正する必要がある。
インターレスモード〜_KANJI2・_KANJI3でないと、上部が強制スクロールされる。
画面がちらつかない_KANJI・_KANJI1で実行するときは、改行の「PRINT」を削除する、
最後にINPUT$(1)やIF INKEY$="" THEN を加えるなどの工夫が必要。
802799
2014/03/14(金) 04:13:09.54ID:Dt0a1Iuk もう一つ。海外のBASICのことを考え、140行は Y\4 から INT(Y/4) に変更した。
整数除算の"\"は、海外(日本語環境以外・日本のMSX以外)では半角"\"になる。
110行 INPUT"年(1900〜2100),月" ;Y,M → INPUT"M,Y(1900-2100)";M,Y
270行 PRINT " ";A$;" "; → PRINT A$;" "; (曜日名を英3文字にするため)
380行 DATA "日","月","火","水","木","金","土"
→DATA "SUN","MON","TUE","WED","THU","FRI","SAT"
それ以外の変更はなし……で動く海外のBASICはあるだろうか?
整数除算の"\"は、海外(日本語環境以外・日本のMSX以外)では半角"\"になる。
110行 INPUT"年(1900〜2100),月" ;Y,M → INPUT"M,Y(1900-2100)";M,Y
270行 PRINT " ";A$;" "; → PRINT A$;" "; (曜日名を英3文字にするため)
380行 DATA "日","月","火","水","木","金","土"
→DATA "SUN","MON","TUE","WED","THU","FRI","SAT"
それ以外の変更はなし……で動く海外のBASICはあるだろうか?
803799
2014/03/15(土) 03:32:57.56ID:GTtrbY0y 訂正。MSXと99Basicは問題ないが、
N88互換のBASICの一つ「MBASIC86」でエラーが出た。
99Basicは作者が元MSXユーザーなので、MSXとの互換性をある程度重視している。
けど、N88BASIC系統は空白の省略は許されない。
PRINT命令やPRINT USING命令などの次には、空白が必要。
310 PRINT USING " ## ";I;:D=D+1
↑310行を訂正してほしい。申し訳ない。
「MBASIC86」は、これで動作した。
N88互換のBASICの一つ「MBASIC86」でエラーが出た。
99Basicは作者が元MSXユーザーなので、MSXとの互換性をある程度重視している。
けど、N88BASIC系統は空白の省略は許されない。
PRINT命令やPRINT USING命令などの次には、空白が必要。
310 PRINT USING " ## ";I;:D=D+1
↑310行を訂正してほしい。申し訳ない。
「MBASIC86」は、これで動作した。
804デフォルトの名無しさん
2014/03/15(土) 12:51:19.31ID:8TvWREf7 なにこの独り相撲
805デフォルトの名無しさん
2014/03/15(土) 13:37:16.17ID:E7qCmrfx IDありになって良かったな
806799
2014/03/15(土) 22:22:48.57ID:GTtrbY0y わざわざ過疎スレまで煽りに来たのか。
……昔のMファンをヤフオクで落札したので、自作品をここに書いただけ。
他人様の作品を無断転載はしないよ。
落札前に再び同じプログラムを作ろうとしたが、肝心の自分がアルゴリズムを忘れた。
私のカレンダーでは使っていないけど(28年分のカレンダーを使いまわしているだけ〜例:1986年=2014年=2042年)
カレンダーのプログラムを作るなら、「ツェラーの公式」
http://ja.wikipedia.org/wiki/%E3%83%84%E3%82%A7%E3%83%A9%E3%83%BC%E3%81%AE%E5%85%AC%E5%BC%8F
を参考にするといいと思う。
……と書いたら、また煽られるだろうな。
昔〜ひろゆき氏が熱心に活動していた頃〜の2chは、
この程度で煽られることは少ない気はしたが。
ひろゆき氏が「PCが安価になったので、一部を除いては、2chは馬鹿ばかりになった」
と嘆いたのもわかる気が。
……昔のMファンをヤフオクで落札したので、自作品をここに書いただけ。
他人様の作品を無断転載はしないよ。
落札前に再び同じプログラムを作ろうとしたが、肝心の自分がアルゴリズムを忘れた。
私のカレンダーでは使っていないけど(28年分のカレンダーを使いまわしているだけ〜例:1986年=2014年=2042年)
カレンダーのプログラムを作るなら、「ツェラーの公式」
http://ja.wikipedia.org/wiki/%E3%83%84%E3%82%A7%E3%83%A9%E3%83%BC%E3%81%AE%E5%85%AC%E5%BC%8F
を参考にするといいと思う。
……と書いたら、また煽られるだろうな。
昔〜ひろゆき氏が熱心に活動していた頃〜の2chは、
この程度で煽られることは少ない気はしたが。
ひろゆき氏が「PCが安価になったので、一部を除いては、2chは馬鹿ばかりになった」
と嘆いたのもわかる気が。
807799
2014/03/15(土) 22:31:04.32ID:GTtrbY0y ID制…といっても、末尾が「0」「O」「i」「P」ではないので、
ID云々で煽る板ではない気がする(少数だが、現時点でもIDがない板がある)。
内容はどうであれ、末尾が「P」はボロクソに罵倒される。
「P」はp2。p2はものすごく嫌われている。悪質な荒らしが多いのかも。
(そのせいで、荒らし以外が罵倒の被害に遭っている)
アク禁になったら、別の携帯電話や避難所のスレに代理書き込み依頼が多数のはず。
あと、書き込みが1日1回限定だとIDの意味をなさないと思う。
ID云々で煽る板ではない気がする(少数だが、現時点でもIDがない板がある)。
内容はどうであれ、末尾が「P」はボロクソに罵倒される。
「P」はp2。p2はものすごく嫌われている。悪質な荒らしが多いのかも。
(そのせいで、荒らし以外が罵倒の被害に遭っている)
アク禁になったら、別の携帯電話や避難所のスレに代理書き込み依頼が多数のはず。
あと、書き込みが1日1回限定だとIDの意味をなさないと思う。
808デフォルトの名無しさん
2014/03/16(日) 14:24:59.42ID:SqWBi3v6 なんかよくわからんけど、どうせなら、この世の全ての BASIC で動くコード
とかだと面白いんだけどな
とかだと面白いんだけどな
809デフォルトの名無しさん
2014/03/16(日) 14:50:41.80ID:4mUPyn+t 独り相撲してナンボのスレだけどな
まあ、番号コテの人にはスレタイくらい読んでおいてほしかったとは思うな
まあ、番号コテの人にはスレタイくらい読んでおいてほしかったとは思うな
810デフォルトの名無しさん
2014/03/16(日) 15:08:12.80ID:gkqHMcUQ BASICでは、ダークと99はNGに入ってるわ、俺。
811799
2014/03/16(日) 16:50:59.39ID:P7mFBOx5 Wikiや他サイトを参考にし、カレンダーの曜日を求める式を作ったところ…
変数 H:曜日(0〜6、0=日・1=月…6=土)、Y:年(2014など) M:月(3など) D:日(今回は1のみ)
H=(365*Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((306*(M+1))/10)+D-428) MOD 7
N88互換系では実行できたけど……MSXでは"Overflow in xxx"エラー。
MSXのMOD演算子や整数除算"\(海外版は\)"は、
2バイトの整数型(-32768〜32767)の範囲に限られる。
365×西暦4桁がある時点でアウト。
……ので、MODの被除数を32767以下にしてみるか。7の倍数で最も32767に近い値を減算するとどうだろう。
MSXで動かないプログラムを作っても……と思うし。
行番号は追放する方針。>>800->>801のプログラムも、最初はDATA命令の行番号を指示する
"RESTORE 380"があったが、180〜240行を無駄ループにして回避。
変数 H:曜日(0〜6、0=日・1=月…6=土)、Y:年(2014など) M:月(3など) D:日(今回は1のみ)
H=(365*Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((306*(M+1))/10)+D-428) MOD 7
N88互換系では実行できたけど……MSXでは"Overflow in xxx"エラー。
MSXのMOD演算子や整数除算"\(海外版は\)"は、
2バイトの整数型(-32768〜32767)の範囲に限られる。
365×西暦4桁がある時点でアウト。
……ので、MODの被除数を32767以下にしてみるか。7の倍数で最も32767に近い値を減算するとどうだろう。
MSXで動かないプログラムを作っても……と思うし。
行番号は追放する方針。>>800->>801のプログラムも、最初はDATA命令の行番号を指示する
"RESTORE 380"があったが、180〜240行を無駄ループにして回避。
812799(MSXで動作可)
2014/03/16(日) 17:47:43.30ID:P7mFBOx5 100 CLS
110 INPUT "Y,M ";Y,M:MM=M:D=1:U=Y MOD 4
120 IF U=0 THEN UU=1
130 IF U=0 AND (Y MOD 100)=0 AND (Y MOD 400)>0 THEN UU=0
140 IF M=1 OR M=2 THEN M=M+12:Y=Y-1
150 IF Y<0 OR Y>9999 OR MM<1 OR MM>12 THEN RUN
160 H1=(365*Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((306*(M+1))/10)+D-428)
170 HH=INT(H1/32767):H=(H1-32767*HH) MOD 7
180 FOR I=1 TO 12
190 READ X
200 IF MM=I THEN D=X+28
210 IF MM=2 AND UU=1 THEN D=29
220 NEXT
230 PRINT:PRINT
240 FOR I=1 TO 7
250 READ A$:PRINT A$;" ";
260 NEXT
270 PRINT:PRINT:PRINT SPACE$(H*4);
280 FOR I=1 TO D
290 PRINT USING " ## ";I;:H=H+1
300 IF H=7 THEN H=0:PRINT:PRINT
310 NEXT
320 PRINT
330 IF H>0 THEN PRINT:PRINT
340 END
350 DATA 3,0,3,2,3,2,3,3,2,3,2,3
360 DATA "SUN","MON","TUE","WED","THU","FRI","SAT"
110 INPUT "Y,M ";Y,M:MM=M:D=1:U=Y MOD 4
120 IF U=0 THEN UU=1
130 IF U=0 AND (Y MOD 100)=0 AND (Y MOD 400)>0 THEN UU=0
140 IF M=1 OR M=2 THEN M=M+12:Y=Y-1
150 IF Y<0 OR Y>9999 OR MM<1 OR MM>12 THEN RUN
160 H1=(365*Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((306*(M+1))/10)+D-428)
170 HH=INT(H1/32767):H=(H1-32767*HH) MOD 7
180 FOR I=1 TO 12
190 READ X
200 IF MM=I THEN D=X+28
210 IF MM=2 AND UU=1 THEN D=29
220 NEXT
230 PRINT:PRINT
240 FOR I=1 TO 7
250 READ A$:PRINT A$;" ";
260 NEXT
270 PRINT:PRINT:PRINT SPACE$(H*4);
280 FOR I=1 TO D
290 PRINT USING " ## ";I;:H=H+1
300 IF H=7 THEN H=0:PRINT:PRINT
310 NEXT
320 PRINT
330 IF H>0 THEN PRINT:PRINT
340 END
350 DATA 3,0,3,2,3,2,3,3,2,3,2,3
360 DATA "SUN","MON","TUE","WED","THU","FRI","SAT"
813デフォルトの名無しさん
2014/03/16(日) 21:18:49.40ID:lTEgNzO7 >>807
俺P2からの書き込みだけどPにならんよ
俺P2からの書き込みだけどPにならんよ
814799
2014/03/17(月) 00:30:21.19ID:wkMqB80o >>813
この板ではならない。
末尾に"7"などの数字・"Q"などその他の英字がある時点で
「ここはp2・ガラケー・iPhone・PCなどその他 の判別がない」とわかるはず?
末尾が"P"になってもp2とは無関係。"0" "O" "i"も同様。
このような板だと、プロバイダがアク禁のときにp2から書き込んでもバレないけど。
>>809
>スレタイくらい読んでおいてほしかったとは思うな
MSXでMファンに採用された1行プログラムを作ったとき、「これはMSXの仕様に依存している」
と意識した。SPC関数はMSX独自。論理式の"A=D=6"は、正しくは"A=(D=6)"
(D=6のときAが-1に・その他はAが0に、の意)と書くべきだが、エラー覚悟で書いたところ実行できた。
99BasicやMBASIC86でも動く…を目指すと、どうしても脱MSXになる傾向が。
>>812のプログラムの160行・170行はMSX対策。
MODや整数除算"\"は、MSXは32767以下限定。「MSX対策」と書かないとなぜ?と聞かれると思う。
この板ではならない。
末尾に"7"などの数字・"Q"などその他の英字がある時点で
「ここはp2・ガラケー・iPhone・PCなどその他 の判別がない」とわかるはず?
末尾が"P"になってもp2とは無関係。"0" "O" "i"も同様。
このような板だと、プロバイダがアク禁のときにp2から書き込んでもバレないけど。
>>809
>スレタイくらい読んでおいてほしかったとは思うな
MSXでMファンに採用された1行プログラムを作ったとき、「これはMSXの仕様に依存している」
と意識した。SPC関数はMSX独自。論理式の"A=D=6"は、正しくは"A=(D=6)"
(D=6のときAが-1に・その他はAが0に、の意)と書くべきだが、エラー覚悟で書いたところ実行できた。
99BasicやMBASIC86でも動く…を目指すと、どうしても脱MSXになる傾向が。
>>812のプログラムの160行・170行はMSX対策。
MODや整数除算"\"は、MSXは32767以下限定。「MSX対策」と書かないとなぜ?と聞かれると思う。
815デフォルトの名無しさん
2014/03/17(月) 00:41:51.33ID:cdm9pD2a 「これはMSXの仕様に依存している」…まさしくそれがスレタイの意味するところじゃねかしら?
ほかのBASICで動くなら、MSX-BASICの奥義でもなんでもないし
ほかのBASICで動くなら、MSX-BASICの奥義でもなんでもないし
816799
2014/03/17(月) 04:47:53.34ID:wkMqB80o >>812のカレンダーだけど、MSXでもエラーが出ない式があったので訂正。
160 '
170 H=(Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((13*M+8)/5)+D) MOD 7
(160行は削除してもよい。GOTO xxなどがないので、RENUMコマンドも問題ない。)
被除数は常に32767未満なので、MOD演算子でOverflowが出ることはない。
曜日は 0=日・1=月…6=土 なので使いやすい。
調べたところ、0=土・1=日…6=金 と返す式もあるから。
あとは…漢字BASICの_KANJI版を作ったら、カレンダーは終わりにするか。
_KANJI2・_KANJI3を除く漢字BASICは、いかに改行を減らすか…
改行の問題さえ解決すれば、数字が大きいので見やすいはず。
そのうち〜バスの電磁大光ブザーを真似た PLAY"S8M90O6G" とSOUND命令版も紹介するか。
これは自分で考えたもの。 PLAY"S8M90O7G" だと、通常のアナログブザーに。
…当時のMSXのクイズプログラムは、不正解の音は PLAY"O1C" などワンパターンだった。
ちなみにエミュレータのfMSXとRuMSXは、これらの音は再現できない=PSG再現に難がある。
160 '
170 H=(Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((13*M+8)/5)+D) MOD 7
(160行は削除してもよい。GOTO xxなどがないので、RENUMコマンドも問題ない。)
被除数は常に32767未満なので、MOD演算子でOverflowが出ることはない。
曜日は 0=日・1=月…6=土 なので使いやすい。
調べたところ、0=土・1=日…6=金 と返す式もあるから。
あとは…漢字BASICの_KANJI版を作ったら、カレンダーは終わりにするか。
_KANJI2・_KANJI3を除く漢字BASICは、いかに改行を減らすか…
改行の問題さえ解決すれば、数字が大きいので見やすいはず。
そのうち〜バスの電磁大光ブザーを真似た PLAY"S8M90O6G" とSOUND命令版も紹介するか。
これは自分で考えたもの。 PLAY"S8M90O7G" だと、通常のアナログブザーに。
…当時のMSXのクイズプログラムは、不正解の音は PLAY"O1C" などワンパターンだった。
ちなみにエミュレータのfMSXとRuMSXは、これらの音は再現できない=PSG再現に難がある。
2014/03/17(月) 05:17:53.14ID:wkMqB80o
100 _KANJI:WIDTH 29:_CLS
110 INPUT "Y,M ";Y,M:MM=M:D=1:U=Y MOD 4:UU=0
120 IF U=0 THEN UU=1
130 IF U=0 AND (Y MOD 100)=0 AND (Y MOD 400)>0 THEN UU=0
140 IF M=1 OR M=2 THEN M=M+12:Y=Y-1
150 IF Y<0 OR Y>9999 OR MM<1 OR MM>12 THEN RUN
160 H=(Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((13*M+8)/5)+D) MOD 7
170 D=31:M=MM
180 IF M=4 OR M=6 OR M=9 OR M=11 THEN D=30
190 IF M=2 THEN D=28+UU
200 PRINT:PRINT "SUN MON TUE WED THU FRI SAT"
210 PRINT SPACE$(H*4);
220 FOR I=1 TO D
230 PRINT USING " ## ";I;:H=H+1
240 IF H=7 THEN H=0:PRINT
250 NEXT
260 PRINT
270 IF H>0 THEN PRINT
280 END
110 INPUT "Y,M ";Y,M:MM=M:D=1:U=Y MOD 4:UU=0
120 IF U=0 THEN UU=1
130 IF U=0 AND (Y MOD 100)=0 AND (Y MOD 400)>0 THEN UU=0
140 IF M=1 OR M=2 THEN M=M+12:Y=Y-1
150 IF Y<0 OR Y>9999 OR MM<1 OR MM>12 THEN RUN
160 H=(Y+INT(Y/4)-INT(Y/100)+INT(Y/400)+INT((13*M+8)/5)+D) MOD 7
170 D=31:M=MM
180 IF M=4 OR M=6 OR M=9 OR M=11 THEN D=30
190 IF M=2 THEN D=28+UU
200 PRINT:PRINT "SUN MON TUE WED THU FRI SAT"
210 PRINT SPACE$(H*4);
220 FOR I=1 TO D
230 PRINT USING " ## ";I;:H=H+1
240 IF H=7 THEN H=0:PRINT
250 NEXT
260 PRINT
270 IF H>0 THEN PRINT
280 END
818デフォルトの名無しさん
2014/03/19(水) 12:04:38.51ID:OxhLoqdL ここもちらしの裏だし
まいっか
まいっか
819デフォルトの名無しさん
2014/06/04(水) 15:34:40.19ID:ZiHf6GEW 揚げろや屑やろう!
820デフォルトの名無しさん
2014/06/04(水) 15:40:59.44ID:3TCFL1gZ 断る
821デフォルトの名無しさん
2014/07/09(水) 09:59:00.63ID:jeW2TfnT 保守
822デフォルトの名無しさん
2014/07/12(土) 17:02:47.46ID:dhVKd2av 奥義はよ
823デフォルトの名無しさん
2014/07/14(月) 22:42:26.64ID:4A74nF8C 奥義マダー?
824デフォルトの名無しさん
2014/07/15(火) 06:39:57.66ID:mWyocOMn 奥義・光子力まるはだか!
825デフォルトの名無しさん
2014/07/15(火) 11:46:12.23ID:6lvRYATA ジャパニウム、だっけ?
826デフォルトの名無しさん
2014/07/15(火) 19:41:46.28ID:uDYfEjIO そのジャパニウムの力で、
小学4年生の江久保葉子ちゃんをまるはだかにむくのじゃあ!
小学4年生の江久保葉子ちゃんをまるはだかにむくのじゃあ!
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市早苗首相、人口減少問題で「地方は東京を見習って」発言に違和感 鳥取・平井知事、県議会で言及 ★2 [Hitzeschleier★]
- 高市総理の「働き方」のリアル 実質“休みゼロ”、睡眠は2時間、会食ゼロ…溜まった洗濯をしながら党首討論の準備 [Hitzeschleier★]
- 【速報】 山上徹也被告が謝罪 「何の恨みもありません。非常に申し訳ないことをした」 ★2 [お断り★]
- 『M-1』決勝進出9組発表 エバース、ヤーレンズ、ヨネダ2000、ママタルト、真空ジェシカら進出 [muffin★]
- 【サッカー】日本代表・中村敬斗選手へのストーカー行為容疑で逮捕の女性(65)不起訴処分「犯行時の精神状態を考慮した」千葉地検 [久太郎★]
- 芸人・永野が断言 令和が「1」なら昭和は「100楽しかった」「夢いっぱいだった」★3 [muffin★]
- オナニーキャンセルさせていただきます
- 【悲報】日本維新の女議員、旦那にサンドイッチ作るからパン買ってこいと命令し、6枚切りを買ってきたため発狂wwwwwwwwwwwwwwwwwww [802034645]
- 「90年代までの日本人は皆が明るかった!」→これマジなの? [346195464]
- は!な!か!ら!
- 千晴いるじゃん
- マンコ板、高市を大絶賛「クルド人は追い出せ!l「高市さんありがとう」
