P6大全集より「CUBE PUZZLE」公開 投稿者:Hashi 投稿日:2005/03/28(Mon) 01:51 No.1052 | |
|
しました。 激ムズパズルゲーなので、クリアの確認が出来ませんでした。 1面すらクリアできないし…orz バグがあったら教えてください。(-_-;
Windyさん、けんぞうさん: 発売日が奥付より未来なのに発売されるのは、すべての書籍がそうなん じゃないでしょうか。どうも納得いかないですけどねぇ。
>それにしても、SRのVRAM の話は、聞きたいですね。(^^; MSX+P6の話もおもしろかったですが、一つでも謎を明らかにして欲しかったですね。
metal-masterさん: >私は何を信じてこれから生きていけばいいんでしょうか?(笑) ウケケ… ま、まぁ、発売前にリークしてしまうのは、会社の機密情報漏洩に当たり ますし、アスキーへの信用もあるので…ね。 あと、指摘部分について、追加・修正しました。ありがとうございます〜 |
| Re: P6大全集より「CUBE PUZZLE」公開 metal-master - 2005/03/28(Mon) 02:28 No.1053 | |
|
|
> ま、まぁ、発売前にリークしてしまうのは、会社の機密情報漏洩に当たり > ますし、アスキーへの信用もあるので…ね。
まぁこちらも冗談ですから(笑) ちなみに寝る前に発見したものを追加ということで。
P.67 中央列下から2行目『ドラゴンクエスト」』→『ドラゴンクエスト』 P.68 ページ一番上の「RetroPC Foundatiion」→「RetroPC Foundation」 P.73 「RetroPC Foundation」とは?内一番左の列10行目「RetroPC Foundatio」→「RetroPC Foundation」 |
| Re: P6大全集より「CUBE PUZZLE」公開 のり - 2005/03/28(Mon) 02:56 No.1054 | |
|
|
まだまだ出てきますね〜。(^^;
metal-masterさんに追加〜。 P73中央一番下「RetoroPC Foundation」→"o"が多い。(^^; P73右下「RetroPC Fondationの倉庫で」→"u"が無い。(^^;;
P35のSX-2画面写真下に2箇所「デモンストレション」("ー"が無い)と なっているのは、他でも全てこの表記であれば間違いとは 言い切れないと思いますが、他では「デモンストレーション」 となっている事から、統一した方が良かったのではないかと…。 ページ下のAX-9の写真説明の部分では「デモンストレーション」に なっている事ですし。
P219の「松島徹氏代表作一覧」で、タイニーゼビウスが PC-6001mkIIとなっていますが、PC-6001ですよね? |
| Re: P6大全集より「CUBE PUZZLE」公開 Hashi - 2005/03/28(Mon) 16:33 No.1055 | |
|
|
metal-masterさんとのりさんの報告分を追加しました。 まだまだありますね。 それにしても、直前に正しい記述があるのにもかかわらず、RetroPC Foundation の綴りを間違えるのはどうなんでしょう。(^^; あと、皆さん遅くまで起きすぎです。睡眠不足だと大きくなれないゾ! 私は久々の平日休みですので大丈夫。:p |
| Re: P6大全集より「CUBE PUZZLE」公開 ぴろぜん - 2005/03/29(Tue) 00:34 No.1056 | |
|
|
どーでも良さそうな話ですが、書籍の「発行日」というのは全国津々浦々離島まで行き渡っての、さらに余裕をみて、決めているそうです。 週刊誌など早そうですが、取次ぎのルートによっては仕方ないのでしょうね。 ぴろぜんさん情報網の 神保町特派員によれば 雑誌の早売り店舗によっては1週間前ぐらいは当たり前に手に取れるそうです。探し方によってはP6本もかなり以前の入手が可能だったのかもしれませんね。
|
| Re: P6大全集より「CUBE PUZZLE」公開 Hashi - 2005/03/29(Tue) 23:59 No.1057 | |
|
|
作者様の意向により、「CUBE PUZZLE」のアーカイブを少し修正しました。 すでにダウンロードされた方は、申し訳ありませんが再DLをお願いします。 m(_ _)m
ぴろぜんさん: 少年ジャンプが本来の発売日である月曜日ではなく、その前の週の金曜日 に手に入ってしまう店もあるのと同じ原理でしょうか。:) ま、雑誌だと賞味期限が短いので、文庫本だとかなり早く刷り上がって、 あとはタイミングだけというものもありそうですね。 しかし、「ぴろぜんさん情報網」ってのが謎です。(^^; ぴろぜんさんは何者なんだろう…うわー何をするhぎ’おgdさお’pじゃsf |
| Re: P6大全集より「CUBE PUZZLE」公開 kei - 2005/03/31(Thu) 00:05 No.1060 | |
|
|
「CUBE PUZZLE」一面もクリアできませぬ…_| ̄|○ |
| Re: P6大全集より「CUBE PUZZLE」公開 Windy - 2005/03/31(Thu) 00:37 No.1061 | |
|
|
なるほどそうなんですね。(^^; あくまで、発行日であって、発売日ではないと。。(汗) 2ヶ月も余裕を見ているんですね。 うーん。すごいです。(^^;
そういえば、コンピュータ関係の雑誌って、18日発売が 多かったのですが、昔は都心で、1日早売りしている場所があって、 見つけたときは非常に嬉しかったのを覚えています。 今と鳴っては、そこでも、発売日通りになってしまっていますが。
それにしても、ジャンプが金曜日にですか。。 すごいですね。(^^; 私が知っている限りでは、早売りしているところはないですね。
|
| Re: P6大全集より「CUBE PUZZLE」公開 Hashi - 2005/04/01(Fri) 00:01 No.1063 | |
|
|
keiさん: 作者のDEN_EIさんよりクリアのヒントをもらいました。 ヒントは 『決まった位置関係に並べて「偶数奇数偶数奇数偶数奇数」でシャッフルしまくり』 です。(汗
Windyさん: ベーマガは毎月8日発売でしたっけ。月刊誌は1月号が12月に出ましたね。 昔、ツレが少年ジャンプの表紙がどの漫画の絵か当てるのをやっていた らしく、店によっては早く売っているので月曜日の朝では勝負ならない と言っていました。(^^; |
| Re: P6大全集より「CUBE PUZZLE」公開 kei - 2005/04/01(Fri) 22:20 No.1064 | |
|
|
> 『決まった位置関係に並べて「偶数奇数偶数奇数偶数奇数」でシャッフルしまくり』
そうですよね、私もそう思いました。=ほとんど【運】!? …いやいや、そうとも言えませんね。 制限時間があるので、シャッフルした瞬間に○×を判断しなければいけないんですね。 むむむ、奥が深い。ってか結構苦手かも。→頭の回転が異常に遅い私(^^; でも楽しませていただいてます。(^^)
なにげに『もし私が作るとしたら…』と妄想してみたので、聞き(読み?)流して欲しいのですが… 1. サイコロを転がして出る目は、実際のサイコロと同様にする 2. ある程度、正しいルートで転がせばきちんと収まるようにする 3. 2を複雑化するために障害物なんかがあると良い 4. 2のある程度とは、どう転がしても収まらないサイコロを数個入れる事 5. 4のために任意のサイコロだけを、回数限定でシャッフル可能にする 以上のような改良を加えると、パズル的な要素が強まり、より一層面白い作品になるに違いない! と思ったんですが、リストが長くなる=ベーマガ系は長いのX=掲載不可ってお話ですね。(^^;
でも、ナゼこんな妄想をするのか? それは「速さを要求されるのが苦手である」という現実からの単なる逃避である。。。と自分自身を分析してみる。(笑) |
| Re: P6大全集より「CUBE PUZZLE」公開 Hashi - 2005/04/02(Sat) 00:46 No.1065 | |
|
|
>制限時間があるので、シャッフルした瞬間に○×を判断しなければいけないんですね。 ああ、自動的にクリア判定していないので、スペースキーでクリア決定 しないといけませんね。シャッフル連打しちゃうとせっかく並んだのに また並べ変わっちゃいますし。
>なにげに『もし私が作るとしたら…』と妄想してみたので、聞き(読み?)流して欲しいのですが… なるほど〜 さすがパズルゲーマーのkeiさんですな。 KAWさんのパズルっぽいイメージが連想されました。(^^) CUBE PUZZLEはかなり長いプログラムなので、これ以上の付け足しは 難しいでしょうね。 …はッ!?keiさんが新たなパズルゲーを作るってことヵ!!
ところで、先ほどやっとFULL-FIREをプレイしましたが… 私が間違っていました。ごめんなさい。<(_ _)> このゲームはすげーッス! あのデカキャラが動くだけでなく、敵キャラもバラエティーに富んで いて、攻撃もすごいし動きも素晴らしい。 スペック的に、P8にできてP6では出来ないんでしょうか? P6初代機のキャラゲーシューティングって何があったかなぁ。 mkII以降だけど、比べられるのはFORTSくらいでしょうかね。 いやぁ、すごかった。 |
| Re: P6大全集より「CUBE PUZZLE」公開 KAW - 2005/04/02(Sat) 01:07 No.1066 | |
|
|
「CUBE PUZZLE」プレイしました。
一面の途中でシャッフルしないと解けなさそうな事がわかったので、 斜めに配置して全て偶数 or 奇数を狙ってました。それでも一面は 越せたのですが、ニ面目はシャッフル運に負けました...。
ゲームと直接関係のない部分ですが、BASIC拡張命令(?)がちょっと 面白いなと思いました。こういうのは簡単に作れるのでしょうか?
あと発効日について。どうせ不自然な位遅いんだったら、本の名前に ちなんで 6/8 or 8/6 にすれば良かったのにと思うのは私だけ?
|
| Re: P6大全集より「CUBE PUZZLE」公開 Hashi - 2005/04/06(Wed) 21:14 No.1067 | |
|
|
>一面の途中でシャッフルしないと解けなさそうな事がわかったので、 むむ、さすがセミグラの貴公子&パズルゲームメーカーのKAWさんですね。 しかし、運に負けましたか。(^^;
LOCATE@は面白いですね。 どうやってるんだろう…
>ちなんで 6/8 or 8/6 にすれば良かったのにと思うのは私だけ? 私もWindyさんの報告を呼んだときにそう思いました。5月9日だったら 6月1日でも6月8日でも8月6日(は遠いか)でもイイじゃん、と。
一応、Moliceさんに正誤表を渡しましたので、Moliceさん経由でアスキー に伝わっていると思います。引き続き誤植などがありましたらご報告 していただけるとBBSのネタになって嬉しいのでよろしくお願いします。 |
| Re: P6大全集より「CUBE PUZZLE」公開
- 2005/04/24(Sun) 18:48 No.1081 | |
|
|
どうも皆さん初めまして。作者のDEN_EIです。
このゲームのゲーム性はともかくとして(^^;、Hashiさんから要望を受けたので、LOCATE@などの拡張命令についてちょっとお話します。 P6は、BASIC命令を実行する時に、ROMのどの番地のルーチンをコールして処理すればいいか、各命令ごとにその開始番地を記したテーブルがあるのですが、これがRAM上のワークエリアに存在しています。 (詳しく覚えていませんが、多分&HFA00番地位からです>ワークエリア)
そこで、ワークエリア上命令テーブルの、該当する命令(LOCATEやPRINT)の実行開始番地を、自分のマシン語を実行する番地に書き換えてしまえば、その命令の処理を乗っ取る事が出来るというわけです。
具体的には、LOCATEやPRINTを乗っ取った先の処理で、まず命令文(LOCATE/PRINT)の次に来る文字列の判定をして、「@」ならば乗っ取り処理を続行、「@」以外なら本来の(ROM上にある)処理をコールします。 (但し、次に来る文字として、スペースは何文字入っても無視しています(うろ覚え)。実行時のプログラム文解析関連処理は、ROM上に色々なルーチンがあるので、それを利用しています)
このゲームのプログラムリストでは、リスト1の80〜130行辺りで開始番地の書換えをやっています(どれがどれだかは忘れました(^^;)
命令テーブルの一般的な話題としては、当時からP6は標準で「HEX$」が用意されているのにもかかわらず、ROM上に実装されていないため、同じようにワークエリアの開始番地を書き換えて、HEX$を実装しました、というプログラムが幾つかの雑誌や書籍に掲載されていた事があったと思います。原理的にはそれと同じですね。
この辺りの知識はP6Techknow本に載っていた情報なので、本を持っている方はぜひ確認してみてください。 (自分も当時はよく読んでいましたが、今は押入れの奥深くにしまって取り出せない状態です(^^;)。
今思えば、P6Techknow本の情報は本当に参考になりました。このゲームでは、他にもP6Techknow本のテクニックを使っている部分(例えば、OUT&H93,4/5・EXEC&H1061+PEEK(&HFECA)・PEEK(&HFD1B)など)が結構あって懐かしく思っています。
長文失礼しました。こんな感じですが、どうでしょう?>Hashiさん |
| Re: P6大全集より「CUBE PUZZLE」公開 Hashi - 2005/04/24(Sun) 23:22 No.1083 | |
|
|
DEN_EIさん、詳しい解説ありがとうございます。 KAWさん、こういうことだそうです。(^^; メールでも書きましたが、BASIC命令をフックして新しい命令を作ると いうのは面白い発想ですね。 それがPC6001Techknowの時からテクニックとして公開されていたとは 驚きです。 やっぱ、Techknowは押さえておくべきなのかなぁ。 |
| Re: P6大全集より「CUBE PUZZLE」公開 KAW - 2005/04/25(Mon) 00:06 No.1085 | |
|
|
> KAWさん、こういうことだそうです。(^^; 了解です(^^;)。既存の命令+追加文字のパターンの新命令なら作れ そうな感じですね。
この方法を使ったら、過去に作った文字表示のプログラムももっと 使い易くなるかも。 というか、この方法を使ってもいいですか? > DEN_EIさん
P6Techknow本は持ってないのですが、色々書いてそうで良さげです。 国会図書館にはあるようなので、またいつか見に行こうかな。
|
| Re: P6大全集より「CUBE PUZZLE」公開
- 2005/04/29(Fri) 02:30 No.1087 | |
|
|
>この方法を使ったら、過去に作った文字表示のプログラムももっと >使い易くなるかも。 >というか、この方法を使ってもいいですか? > DEN_EIさん
良いですよ(^^)。
但し、この拡張命令(PRINT@)には制約があります(以下、うろ覚えの部分もありますので間違っていたらご容赦ください)。 ・SCREEN1or2では使えない ご存知だと思いますが、SCREEN1/2と3/4ではシステム的に文字描画方法が異なりますので、SCREEN3,4限定になります。 (実質SC4用なので、確かSC3ではちょっと工夫する必要があったか)
・定義していない文字でもディフォルト文字列が表示されるように、キャラジェネROM(&H6000〜&H6FFF辺り?)の内容を&HD000〜&HDFFF辺りにコピーしている そのせいで、このままだと32KB/ページ2限定になってしまいますが、確かワークエリアに何ページ(1〜4)で起動したか判断するアドレスがあったと思うので、ちょっと細工すればリロケータブルに出来ると思います。
・P6用の命令テーブルに細工しているので、当然P6mkII以上のモードでは動作しない というか、自分はP6(32KBモード)でしか動かした事がありません… (今はP66SRも持っていますけど)
本当は、このゲーム用にLOCATE@,PRINT@を作った後、P6にはDEFやCHR$が命令予約語になっているので、 例えばX1(でしたっけ?)のPCGの様に、DEF CHR$()命令なんかを一緒に作ったら面白いだろうなぁと思っていたんですが、 その内興味が学校にあった9801、9801Mなどに移ってしまって、結局日の目を見る事はありませんでした・・・(^^;
折角ですので、遺志を受け継いでいただないでしょうか?(笑) |
| Re: P6大全集より「CUBE PUZZLE」公開 apaslothy - 2005/04/29(Fri) 02:49 No.1088 | |
|
|
> (詳しく覚えていませんが、多分&HFA00番地位からです>ワークエリア) 確認してみましたが,&HFA61番地からでした。 命令の順番はisioさんのbas2txtのソースコードp6code5.hにある通りですので これだけわかればいろいろ作れるでしょうか?
PC-Techknow6000といえば,この本の内容の一部ををWEBで公開できないかと 動いている方がいらっしゃるそうで(下記URLのComementにあるひぐちさん談) http://blog.japan.cnet.com/kenn/archives/002028.html
まだそのような情報が公開されたという話は聞きませんが,残りの2人の著者さん が見つからないのかな.....
|
| Re: P6大全集より「CUBE PUZZLE」公開
- 2005/04/29(Fri) 21:17 No.1089 | |
|
|
>命令の順番はisioさんのbas2txtのソースコードp6code5.hにある通りですので >これだけわかればいろいろ作れるでしょうか?
そうですね。中間コードと命令文の対応はコレで出来ると思います。 #FORやNEXTが一番最初の方に出てくるのは覚えていましたので、先ず問題ないと思います(もう20年以上経つのに自分も良く覚えてるなぁ…(^^;)
但し、関数系の命令文は、ワークエリアのテーブルを直接見ていないらしいので、命令処理乗っ取りは出来ないかもしれません。 #今回はステートメント系の命令(LOCATE,PRINT)しか使っていませんので特に問題なかったです。
ちなみに、自分はP6エミュレータの方は全く手を出していません(インストールもしてないです(^^;)が、 エミュレータ開発の方には頑張って欲しいですね。P66SRの情報が特に少なくて大変だそうですけど…。 |
| Re: P6大全集より「CUBE PUZZLE」公開 Hashi - 2005/04/29(Fri) 22:46 No.1091 | |
|
|
お、なんだかプチ盛り上がってますね。 プログラミングのテクというのは、今のコンパイラを通して…というのと違って、 深いところでいろいろとできるんですね。 みなさんの書き込みを読んでも面白いです。ぜーんぜん分かってない私ですが。(-_-; エミュ開発日記とか、何かの解析レポートとかも、理解できないけれど 読んでいて面白いです。(^-^; 何かお手伝いできたらと思っているのですが、たいしたことが出来ない もどかしさが...
今日、ディーラーに行って車を新しく買う契約をしました。 希望ナンバーで6001をお願いしてきたので、納車されたら写真を載せますネ。 |
| Re: P6大全集より「CUBE PUZZLE」公開 KAW - 2005/04/30(Sat) 01:46 No.1092 | |
|
|
DEN_EIさん: ありがとうございます。早速使わせてもらいます。といっても、 SCREEN 2で使おうと思っているので、色々変える必要はありそう ですが。
キャラクタ定義の命令もちょっと面白そうですね。 「DEF CHR$」と2つの命令の組合せになると処理がややこしくなる 気がするので、割りきって「DEF@ キャラクタ番号,パターン」なんか を作れば良いかも知れません。
マシン語から命令のパラメータを読む方法がよくわかっていないので 作るとしてもまだ先になると思います...。
apaslothyさん: なるほど。「CUBE PUZZLE」のリストで PRINT, LOCATEの他にもう一つ 処理を乗っ取っている命令が気になってたのですが、CLSっぽい事が わかりました。
PC-Techknow6000は、Webで公開されるのが早いか国会図書館に出向く 気になるのが早いか(^^;)といった所でしょうか。
Hashiさん: 本の影響かも知れませんが、最近 P6プログラマーが増えてきましたね。 こちらもまだまだ頑張らねば。6月ネタも構想はあるのですが、まだ 作成してません。果たして間に合うのか?
あと ついにやりましたね、6001ナンバー。納車されたら、街中で アピールして下さい。
|
| Re: P6大全集より「CUBE PUZZLE」公開
- 2005/04/30(Sat) 06:22 No.1093 | |
|
|
>ありがとうございます。早速使わせてもらいます。といっても、 >SCREEN 2で使おうと思っているので、色々変える必要はありそうですが。 そうでしたかー。もしかすると…と感じていたのでちょっと残念ですね(^^;。
ご存知のように、SCREEN1/2のキャラクタ描画の仕組みは、SCREEN3/4とは異なり テキストVRAMの任意アドレスに該当文字のアスキーコードをセットしているだけです。 なので、画面への文字イメージ描画自体は、(自信ないですが)メインCPUの担当外かな?(ハードウエア的に処理している?)…と思います。 そうなると、拡張命令(命令乗っ取り)だけでは解決しないかもしれません……。
#ご存知の方も多いかとは思いますが、SCREEN3/4に設定した状態で、VRAMのアトリビュート領域に対して #ある決められた値(確か&H84等?正確なビット構成は忘れました)をセットしていくと #SCREEN3でも4でもない中途半端なモードになりますよね(SCREEN3の縦長版??)。 #同じようにSCREEN1/2の場合にも、アトリビュートを書き換えると、表示文字が一回り小さい、可愛い(笑)イメージになる表示モードがありました。 #(しかもキャラクタが00〜7F分しか定義されておらず、80〜FF分は00〜7Fのイメージをそのまま使っていたような…) #何が言いたいかというと、SCREEN1/2の場合、アトリビュートを書き換えるだけでも表示されるキャライメージが変わってしまうので、 #即ちこれはハードウエア的に処理されてるんだろうな、と当時は疑問も持たずに納得していました(^^;。
SCREEN1/2で実現するのに一番楽な方法(というか反則技ですが)は、キャラジェネ(&H6000〜&H6FFF)にあるイメージデータを直接書き換える事でしょうけど、当然ROMの部分なんで実機では無理ですよね…(^^;。 (エミュレータだとその辺りの扱いはどうなんでしょう?) ハードウエアが関わる(と思われる)部分なので、この辺りの話題はエミュレータ開発者の方々が断然詳しいと思います。
>キャラクタ定義の命令もちょっと面白そうですね。 >「DEF CHR$」と2つの命令の組合せになると処理がややこしくなる >気がするので、割りきって「DEF@ キャラクタ番号,パターン」なんか >を作れば良いかも知れません。 「DEF@ キャラクタ番号,パターン」でも全然問題ないと思います。ただ「DEF CHR$(コード番号)="パターン"」といった形でも、大して変わらないかもしれません。 #CHR$は予約語なので中間コード1バイトになります(要するに「DEF」直後の判定が「@」が来るか「CHR$(の中間コード)」が来るかの違いだけになります)。 また、ROM上にある命令文解析ルーチンには、例えば ・「CHR$」の直後に'('文字が出てくるかサーチする。 →途中の空白(&H20)は無視する。 →'('があればそこまで(解析アドレス位置を)移動する。 →'('が出る前に他の文字列が見つかったor結局'('がその行に出てこなかった、等の場合はエラー処理をコールする(フラグを立てるだけだったかも知れません) といった感じのルーチンもあったと思いますので、Techknow本などで上手く情報を入手できれば、その辺りの手間も掛からないかもしれませんね。
>なるほど。「CUBE PUZZLE」のリストで PRINT, LOCATEの他にもう一つ >処理を乗っ取っている命令が気になってたのですが、CLSっぽい事が >わかりました。 そうですね(笑)。前に「リスト1の80〜130行辺りで」と書いていますが、 書きながら自分でも「あれ?3つ分ある(^^;」と思いつつ、それが何だったかはすっかり忘れてました(^^;。
何か、皆さんの話を聞いていて、押入れからTechknow本を発掘したいなぁという気分になってきました。 #いや、実際には既にちょっと探したんですが、すぐに出て来たのはPC-98関連の本ばかりで…(苦笑)。 発掘には(自分のモチベーションも含めて)相当の時間がかかりそうです。
>PC-Techknow6000といえば,この本の内容の一部ををWEBで公開できないかと >動いている方がいらっしゃるそうで(下記URLのComementにあるひぐちさん談) >まだそのような情報が公開されたという話は聞きませんが,残りの2人の著者さん >が見つからないのかな..... Techknow6000といえば「一零さん(多分PN)」という名前が思い浮かびますが、3人の共著だったんですね。 気がつきませんでした…(汗。 |
|