プレイ日記
Godot orz_127
今回もコンソールに表示できる文字コードの範囲を確認しようと思い立ち。 いつもは「F$=" ":FOR I=0 TO &HFFFF:F$=F$+CHR$(I):NEXT:SAVE "TXT:TMP",F$+CHR$(10)」的な事をやって0から&HFFFFまでを並べたテキストファイルを作成してエディタで黙視でやっていたのですが、今回は、ふと思い立ち、こんなプログラムを作ってみました。 ちょっとお馬鹿な作りっぽいですが、もっとなんとかなるだろうと言う意見もあるでしょうが(今後の参考にしたいので他によい方法があったらご教示を)、とりあえず何かの参考になるかと思い投稿してみましたw 因みにNew3DSで20分位かかります。
4そうだね
プレイ済み
返信[1]
親投稿
Godot orz_127
それなら旧だと1時間か?と気になったので、作ってみた公開キーが「CK383EZX」です。 旧で打ち込み直すのが面倒なので旧に移すために暫定的に作った公開キーです。 急になくなっていても悪しからず。 で、結果ですが、やはり思っていたように、1/3の速さの旧型の量産機では1時間かかったよ、とはいかず、新型の量産機とほぼ同等の性能が! 期待を裏切られました。 これを書いている間は実行中のはずだったのにw
0そうだね
プレイ済み
返信[2]
親投稿
Godot orz_127
あ、説明か抜けていました。 プログラムでは、空白(&H20)から調べ始めて&HFFFF迄を調べていきます。 3分間のカップ面を順番に作り続け、食べ続けていけば6杯目のカップ面を食べている途中で終了する仕様となっております。 同じカップ麺だと飽きると思うので種類はある程度用意しておくことをお勧めします。 最後に開始時間と終了時間を表示。 SB330.IDXというテキストファイルをSAVEしようとします。 ここで嫌なら「いいえ」を選ぶと20分間の3DSの頑張りが無に帰す仕様となっています。
0そうだね
プレイ済み
返信[3]
親投稿
Godot orz_127
読み直してみたら投稿のところ「黙視」ってなんだ?w 「目視」の誤変換ですorz
0そうだね
プレイ済み
返信[4]
親投稿
処理時間が変わらないのは、20行目でVSYNCを入れている為ではないでしょうか(推測)。 また、「VSYNC:CLS:GCLS」を「GFILL 0,0,8*7-1,7,0」にすれば、もっと早くなるかもしれません。
0そうだね
プレイ済み
返信[5]
親投稿
Godot orz_127
指摘どうもです。 動作中なのを生暖かくみまもりたかったのでVSNCを入れていました^^; これくらいの処理ならVSNC間に終わってしまい、ただ同じ数のVSNCのループになってしまいそうですね^^; 確かにGCLSよりGFILLで範囲指定で消した方が早いかも。
1そうだね
プレイ済み
返信[6]
親投稿
Godot orz_127
ちゃんと動いているか心配だったので文字コードを表示しつつ、それをちゃんと確認出来るようにVSYNCをいれていたのですが、とりあえずちゃんと動いていること、所要時間もわかったので、画像のように修正してみました。 GCLSもコータさんの指摘通り最低限の範囲をGFILLする方向で。 結果、New3DSでは、15秒程度、旧3DSでは52秒程度という感じで それなりの性能差が実感出来るようになつたとさ。 どんとはらしょ。
1そうだね
プレイ済み
返信[7]
親投稿
Ϊċăņ ďо įт hikahikaru3
(どうでもいいけど)文字コードはN≧65536のときCHR$(N)==CHR$(N mod 65535)になるらしいです。
0そうだね
未プレイ
返信[8]
親投稿
Godot orz_127
MODと言うより、2バイトのあつかいなので上位バイトが切り捨てられているのだと思います。
0そうだね
プレイ済み
返信[9]
親投稿
Ϊċăņ ďо įт hikahikaru3
うーむ?そうかなぁ?
0そうだね
未プレイ
返信[10]
親投稿
Godot orz_127
多分 N MOD &HFFFF ではなく、 N AND &HFFFF で2バイトマスクかと。 あとMODなら N MOD &H10000 にしないと…。
0そうだね
プレイ済み
返信[11]
親投稿
Ϊċăņ ďо įт hikahikaru3
...あ、そっか MOD65535だと0~65534だ…
0そうだね
未プレイ