2014年10月30日木曜日

BASIC

なんとなく気になってしまったもの[E:coldsweats01]



魔法のプリンセス ミンキーモモ
第42話 「間違いだらけの大作戦」



20141029



BASICのプログラムですね…。ストーリーの流れからすれば、「画像はイメージです。」なのですが、プログラムの内容自体はデタラメということもなく、何かそれっぽい処理を行っている雰囲気です。



  • 注釈(REM)にて、(1982, 4, 14)という日付らしきもの


  • 16進数の表記方法が、「$12」のように「$」を使っている。「&H」ではない。SHARPのBASICっぽい


  • POKEで、アドレス$12、$13などに書き込む。当時のほとんどのパソコンはその辺りはROM領域だったので、これってクリーンコンピュータ(笑)なSHARP MZシリーズ?


  • RENUMBERと書かれているが、BASICの行番号をつけなおすプログラム? BASICのコードが格納されるメモリ領域を直接読み書きしているような感じもする


  • 32300行で、メモリから4文字取り出して、32210~32230行で比較している。メモリ中ではBASICのコードは、中間コードで格納されているのが普通なので、"GOTO","THEN","GOSU"(GOSUBの最初の4文字だろう)といった文字列が取り出せるとは思えないが…


  • アドレス K=$0246(よく読めない)から、元のBASICコードが格納されていて、アドレス J=$3C00へ、変換後のコードを書き込んでいる?


  • 32180行で、SPCという関数を使っている。スペース文字を指定した回数だけ作る?


  • 32350行で、POKE 6,K/256:POKE 7,K ・・・16bit値を上位バイト、下位バイトの順に格納。だとするとZ80じゃない?


  • 32070行でも、I=256*PEEK(K)+PEEK(K+1) ・・・これも上位、下位の順序。ひょっとして6809とか?


どうでもいいことなのに、なんか気になる~[E:happy01]



あとから気がついたけど、6809などでは、ゼロページアドレッシングというのがあって、アドレス0000~00FFは特別扱いできるようになっていたんですよね。80系しか使ったことがないのでよく知らないですが。というわけで、勘で、FM-7/8あたりでしょうか?









0 件のコメント:

コメントを投稿