今更、雑誌の打ち込み 


(注)このページは、いまだに雑誌のプログラムを打ちこんだ事を記すだけの なーんの意味の無いコーナー(中島みゆき調)です。 だいたいエミュレータで打ちこんでいるのですがエミュレータで動くとは限りません。 実機を出して、打ち込み、また吸い出すのが面倒ですしね。どうせ保存が目的なので... 後はWin700でMZ−80K/Cモードで半濁音が打てないみたいなので、 key.defファイルの300行目の”75 = 61”を”75 = 24”にしています。 これで106/109 JP TypeでHomeキーに割り当てる事が出来ます。 それでも完全にMZ−80Kモードは対応していないみたいです。 VIC−1001はWINVICEを使用して、CG−ROMを日本用に変えて使用 テープはtapでないと上手くロードが出来ないみたいです。  
AppleII用のソフトを打ち込む場合  DOS3.3の場合  まずはブランクディスクを作成(エミュレータによって違います)  Applewinだとドライブの所をクリックしてファイル名で好きな名前をつけて開く  プロンプトは’]’か’>’なのですがどちらでも構いません  ドライブ2にブランクディスクを作成したとして、フォーマット(イニシャライズ)を実行します  INIT HELLO,V254,S6,D2  と打ちこんだらドライブ2にDOS3.3のフォーマットされたイメージが作成されます。  ここで’HELLO’というのはグリーティングプログラム名(起動時に実行するファイル名)で  ’V254’はボリュームナンバー(1〜254)  ’S6'はディスクインターフェイスが刺さっているスロット番号、’D2’はドライブ番号  最低でもグリーティングプログラム名を指定しないといけません。(その他のパラメータは省略可、順番もありません)  又、DOS3.3は少し変った構造をしているので、マシン語モニタでも同じコマンドを受け付けます  ファイル名の表示  CATALOG,Sn,Dn  パラメータは省略可能、Snはスロット番号、Dnはドライブ番号、実行すると   A 002 HELLO  *I 003 APPLESOFT  *B 006 LOADER.OBJ0  等表示されます、’*’はライトプロテクトが掛かっていることを表し、  ’A’は6K BASICファイル  ’I’は10K BASICファイル  ’T’はテキストファイル  ’B’はバイナリファイル  次の数値は使用セクタ数で、次がファイルネームになります  プログラムのロード  LOAD file name,Vn,Sn,dn  BLOAD file name,An,Vn,Sn,dn  RUN file name,Vn,Sn,dn  BRUN file name,An,Vn,Sn,dn  EXEC file name,Rn,Sn,Dn,Vn  LOADはBASICプログラムをロードします。、BLOADはバイナリファイルをロードします。  ファイルネーム以外は省略可能です,Anはストアアドレス($で16進数指定可)、Rnは実行するn番目のフィールド、  Snはスロット番号、Dnはドライブ番号  RUNはBASICプログラムのオートラン、BRUNはバイナリファイル(機械語)のオートラン  EXECはシーケンシャルファイルを実行します。    プログラムのセーブ  SAVE file name,Vn,Sn,dn  BSAVE file name,An,Ln,Vn,Sn,dn  SAVEはプログラムをセーブします、ファイルネームはアルファベットから始まる30文字以内で','を含まない  BSAVEはバイナリファイルをセーブします。Anは先頭アドレス、Lnは長さです。(先頭に$をつけて16進数指定可)  ファイルネーム、An、Ln、以外は省略可能です。  ファイルの確認  VERIFY file name,Vn,Sn,Dn  ファイルのベリファイを行います。  ファイルネーム以外は省略可能です。  ファイルの削除  DELETE file name ,Vn,Sn,Dn  ファイルの削除をします。(ライトプロテクトが掛けられていると出来ません。)  ファイルネーム以外は省略可能です。  ライトプロテクト  LOCK file name ,Vn,Sn,Dn  UNLOCK file name ,Vn,Sn,Dn  LOCKはライトプロテクトを掛け、UNLOCKは解除です。  ファイルネーム以外は省略可能です。  
2021年12月の打ち込み  ’84/10 BASICマガジン JUMP JUMP ぴゅう太 G−BASIC用 OK    MESSで動作可で  シミュレータだとメモリオーバーとなります  実行は出来るが  パッド入力が行われないようです  デバッガで見る限り認識されているので  私のやり方が間違っているかもしれません     2021年10月の打ち込み  ’85/01 BASICマガジン DEFEND SC−3000 LEVELIII用 OK       2021年03月の打ち込み  ’89/02 Oh!X REDA S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  RINGでソースジェネレート、REDA自身でアセンブルします  アセンブラ、エディタ部分は単独で使用可なので  それぞれ別でアセンブルします    ’89/01 Oh!X FLICK S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  RINGでソースジェネレート、ZEDA−3でアセンブルします  ただしソースは参考なのでまずZEDA−3用に修正します  EQU命令内の計算、INC H,H等は展開してINC H:INC H  [ニモニック]はオペコードに変換(BIT命令の所は若干違う)  メッセージはDMでDBを分ける  プログラム中のラベル+nn*mmの掛け算は計算してラベル+aaに変換等    なお訂正記事は標準以外のキャラクタを使用していたのを変更   5010:A5 A5 A5 A5 → 2E 2E 2E 2E       2021年02月の打ち込み  ’88/09 Oh!X 超小型エディタ TED−750 S−OS SWORD用 OK    ソースからオブジェクト作成して手動でリロケータブルファイル作成しています  201行が途中で切れていますがADD A,’0’−’ ’     2020年07月の打ち込み  ’85/10 LOGiN WATCH OUT Apple II用 一応OK    要10K BASIC(FP)  単純なチェックはOKでした      ’84/07 テクノポリス GASHU m5 BASIC−G用 OK    キー入力ポートのミラーをサポートされていないと動作しません  更に左右SHIFTキーの判断ができない場合も弾が出ません  無理やり動作させるにはメインプログラム   440行 inp(62)→inp(54)   480行 inp(56)→inp(48)   490行 inp(56)→inp(48)  左SHIFTキーが動作しない場合   480行 =4→=12     2020年01月の打ち込み  ’85/01 BASICマガジン BOY&GIRL m5 BASIC−G用 OK    このままでは若干グラフィックがおかしくなりますが  訂正記事はなさそうなので勝手に修正します   370 data 00080c0c0e0e0e0e         ↓   370 data 0080c0c0e0e0e0e0     2019年11月の打ち込み  ’85/08 I/O Small−Cコンパイラ[2] OK       2019年10月の打ち込み  ’85/07 I/O Small−Cコンパイラ[1] OK    アセンブラ、リンカは含まれていないので実行は出来ませんが  きちんとプログラム(8080用)が出力されています       2019年09月の打ち込み  ’85/01 BASICマガジン せんぷうき m5 BASIC−I用 OK    エミュレータによってはスタート出来ません  710行のpeek(&702A)<>4  で左SHIFTの判断を行なっていますが  eM5ではココの部分で誤動作が起きているようです     2019年04月の打ち込み  ’87/04 Oh!mz TANGERINE S−OS SWORD用 OK    以前にもらったものですが  RINGでソースジェネレート、ZEDA−3でアセンブルします  メイン部分ダンプで08809H−08FFFHが余分に出力となっていますが  086C0H−08808Hもソースでは  DEFB、DEFS命令で000Hで埋まりますが  ダンプでは数値が入っています(ゲーム自体に問題はありません)  08809H−08FFFHはソースリストの一部です    ’87/04 Oh!mz INVADER GAME S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  RINGでソースジェネレート、ZEDA−3でアセンブルします  ここで注意するのは説明されている通りに  分割ではなく個別でアセンブルします  なお分割で行なおうとすると  ラベルの2重定義のエラーがでます    <MZ−80B/2000/2200 S−OS>   S−OS上でキー入力時にカーソルキャラクタの取り込み   1B61:20 → 1E    <PC−8801 S−OS>   ブロックが突き抜ける症状   1178:20 → 7B    ’88/10 Oh!X MANKAI S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  RINGでソースジェネレート、ZEDA−3で分割アセンブルします  ただ、このままではDEMO部分で1行抜けている為アセンブルできません    MANKAI DEMOソースリスト   309 PL1:  これでダンプリストと同じになります     2019年03月の打ち込み  ’87/02 Oh!mz MARMALADE S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  SOURCERYでソースジェネレート、ZEDA−3でアセンブルします    ’86/04 Oh!mz LIFE GAME S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  ソースリストからZEDA−3でアセンブルします  アセンブルでは2行のOFFSET $5000−$3000を  $8000−$3000に変更してアセンブルします    ’88/02 Oh!mz ELFES S−OS SWORD用 一応OK    以前にダンプリストで打ち込んだのですが  SOURCERYでソースジェネレート、ZEDA−3でアセンブルします  ただORGが2つあり、8バイト隙間が出来るのですが  その中にソースリストが残ってしまいます  それが1バイトずれています(私自身のタイプミスの可能性有り)  作成したオブジェクト自体はOKなので  例えば+01Hを+1H等のタイプミスが考えられるのですが  何回見直してもありませんでした  そこでZEDA−3のテキストをディタコマンドX4E01を実行して  1つ後ろにずらしてからアセンブルで作成すればダンプリスト通りになります    <MZ−80K/700/1500>  ゲーム終了時の誤動作   8F6D:80   914A:00 00   9154:00 00    ’86/08 Oh!mz 五目並べ S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  SOURCERYでソースジェネレート、ZEDA−3でアセンブルします  プログラム本体は$3000からなので  O2000、X7000等の設定でソースジェネレートを行います  アセンブルでは58行のOFFSET $1D00を  $1E00に変更してからでないとZEDA−3ではアセンブル出来ません  なお訂正記事はLOCルーチンの動作関連です  <変更>   4751:CD 1E 20→CD B0 4A   475B:CD 1E 20→CD B0 4A    <追加>   4AB0:F5 CD 1E 20 F1 C9    ’87/08 Oh!mz SOURCERY S−OS SWORD用 訂正記事あり    以前にダンプリストで打ち込んだのですが  SOURCERY自体をソースジェネレートしてテキストを抽出  テキストエディタで編集、イメージに書き直しました  ソースリストはZEDA−3で分割アセンブルします  また訂正記事があります    <マクロ関係の訂正>   38DD FE 40 DA DF 33 FE 70 D2 : 6A   38E5 DF 33 E6 07 FE 06 D2 DF : B4   38ED 33 4E 23 CD 58 40 CA DF : B2   38F5 33 7E A9 FE 09 C2 DF 33 : 35   38FD A1 28 05 FE 09 C2 DF 33 : A9   3905 CD 69 40 4C 44 20 20 20 : 66   390D 00 79 0F 0F 0F 0F E6 03 : 9E   3915 47 79 0F E6 03 4F C3 5D : 27   391D 3B : 3B   ---------------------------------   SUM: 33 C2 EF F0 F1 46 93 76 3A06    ’87/08 Oh!mz 碁石拾い S−OS SWORD用 OK    以前にダンプリストで打ち込んだのですが  ソースリストからZEDA−3でアセンブルします    ’85/12 BASICマガジン BOUNCE SC−3000 LEVELIII用 OK       2019年02月の打ち込み  ’86/09 BASICマガジン マネーパニック SC−3000 LEVELII用 一応OK    まずキャラクタ定義プログラムが無いので掲載通りの画面になりません  またゲームの説明を読むとメインプログラムも少しだけ変更が必要です  尚、何も変更しなくてもゲーム自体は遊べます    訂正記事は無いので出来るだけ掲載画面に近づけます  画面両端に行くとエラーが出ますが  ゲームの説明では行かないでくださいとなっているので  メモリ上の関係もあるのでこのままにします    <キャラクタ定義プログラム>   10 COLOR15,1   20 PATTERNC#248,"F8F8007C7C00F4F4"   30 PATTERNC#249,"00FC84B4B484FC00"   40 PATTERNC#250,"0400040004000400"   50 PATTERNC#253,"3434FCFCB0B078CC"    <メインプログラム>   メインプログラムの2行の画面作成で両端のスペースを   トーン:CHR$(&H90)にする   15行の三角みたいなのはスペース+円盤:CHR$(&HFA)にする   後はキャラクタ定義プログラムをロード、実行後   メインプログラムを実行すればOK    ’85/11 BASICマガジン エキサイト・レース SC−3000 LEVELII用 OK    キーバッファの都合上、3行のPRINTを?として入力しないと  全部入力出来ません     2019年01月の打ち込み  ’79/10 アスキー THE COMPUTER Apple II用 一応OK    SWEET16使用の為、要6K BASIC(INT)  単純なチェックはOKでした    ’81/07 アスキー 窓拭き少年Eゲーム CBM3032+CB2サウンド用 OK    ’81/04のチェックサムなどを参照となっていますが  掲載されていたのは標準BASIC用なのでこのままでは  ゲームプログラムとチェックサムプログラムの領域が重なってしまいます  BASICのチェックサムプログラムを起動する場合  BASIC開始アドレスを変更しないといけません  とりあえず$2000にBASICプログラムを置けるようにします  SYS64785でモニタ起動、メモリを下記に書き換える     0028:01 20   2000:00    XコマンドでBASICに戻りNEWを実行  これでBASICのチェックサムプログラムの動作は可能です  CBM3032用ですがPETではROM交換で動作可  N型のPETはそのままで可     2018年12月の打ち込み  ’79/09 アスキー Space Invader Apple II用 OK    ダンプリストが細切れになって掲載されています  その際にインベーダのミサイルワーク領域$1800〜$180Fは  何も指示されていませんが  この領域を$00で埋めないとハングアップする可能性があります  これは$1800〜$180Fは$00になっているものと想定していますが  $FFがあるとハングアップするようです  また画面が縦長になっていますが  モニタ画面を縦にして使用する為です     2018年01月の打ち込み  ’78/05 アスキー STAR WARS PET2001用 OK      ’79/10 アスキー GAME65 PET2001用 一応OK    以前に打ち込んだのですがチェック、整理してOKとしました  PETのROMバージョンは8K用が2.0  16K、32K用が3.0用にるようです  エミュレータによっては動作しません     2017年11月の打ち込み  ’80/04 アスキー スキースラローム・ゲーム PET2001+CB2サウンド用 OK      ’80/01 アスキー GALAXY WAR PET2001−8+CB2サウンド用 OK       2017年10月の打ち込み  ’86/11 Oh!mz MAZE IN MAZE S−OS SWORD用 一応OK    MZ−2000 S−OSなら完全に動作しますが  他の機種のS−OSでは動作しない場合が多いようです  ソースからのアセンブルもOK  SOURCERYでソースジェネレートする場合  DEFM(DM)を一気に指定するとバッファオーバーする場合があります(マップデータ)  X1で作成の場合マップデータ(BIN)だけセーブしてディスクBASIC上で  フリーアドレス内にロードしてアスキー変換をすれば楽にマップデータを作成できます     PC−8001 S−OS 画面が少しおかしい  (プレイ可)  PC−8801 S−OS 画面が少しおかしい  (プレイ可)  MZ−80B  S−OS 画面が出ない     (プレイ不可)  X1      S−OS 3D迷路表示がおかしい(プレイ不可)     2017年02月の打ち込み  ’85/04 BASICマガジン 愛しのCHERRY m5 BASIC−I用 Ok       2017年01月の打ち込み  ’85/03 BASICマガジン GHOST BANK ゲーム m5 BASIC−I用 要修正      まず、当たり判定のVRAMのアドレスが違います   300行の&3C00を&3800に変更  これで当たり判定が正しくなります    次に100個金を取らないと面クリアにならないようになっていますが  画面には99個しか書かれていません  画面に1つ金を余分に書くか、初期値NK=0を1にするか  取った金の判定を変更するかになります  金の判定を変更する場合   320 IF NK>=100…の100を99に変更  これでクリア可能になります    ’84/05 テクノポリス KAKI KID m5 BASIC−G用 OK       2016年03月の打ち込み  ’88/07 BASICマガジン Out of The FIRE SC−3000 LEVELIIIB用 OK      ’86/03 PiO フルスロットル m5 BASIC−G用 一応OK    ごく稀にエラーが出ます    ’87/12 BASICマガジン SPACE AGGRESSOR m5 BASIC−G用 一応OK    リスト4の200行にOが使われていますが  変数Oとしては他では使われていないので  0の間違いのようです  一応動作は同じにはなります    ’84/03 BASICマガジン MOSQUITO m5 BASIC−I用 OK      ’85/01 テクノポリス ワンダーバギー m5 BASIC−I用 OK    ただしエミュレータによっては操作が出来ない場合があります。     2015年11月の打ち込み  ’85/09 PiO 独壇場 SC−3000 LEVELIII用 OK       2015年03月の打ち込み  ’82/08 BASICマガジン カバトリ・ゲーム ベーシックマスタJr.用 Ok    *フォントが若干違います     2014年08月の打ち込み  ’89/01 BASICマガジン SWAP FOOT SC−3000 LEVELII用 一応OK    説明通りの操作にはなりません  70行のX=X*−1を削除すれば説明通りになりますが  壁をすり抜けて端ませ行くとエラーが出てしまいます  おそらくこの不具合を解消する為に追加されたと思います     2014年03月の打ち込み  ’85/06 PiO やきゅうけん m5 BASIC−G用 OK       2013年11月の打ち込み  ’87/10 BASICマガジン BALLOON DREADFUL SC−3000 LEVELIII用    タイトル部分にリスト化け、また風船のルーチンでおかしい部分があります   1130〜1280行のメインループ3内のVXをBX、VYをBYに変更   1320〜1470行のメインループ4内のBXをVX、BYをVYに変更     ’87/11 BASICマガジン ゲンダコ SC−3000 LEVELIII用 Ok       2013年06月の打ち込み  ’86/12 BASICマガジン 移植版 FROG STEP JUMP SC−3000 LEVELIII用 一応OK   X1からの移植、タイムルーチンに気になる所があるのと、クリアをしていないので一応OKとしました    ’86/12 BASICマガジン GUNMAN SC−3000 LEVELII用 OK    タイトルにリスト化けがあります  またリスト1キャラクタ定義の70行のDATA …61…は…64…  だと思われます  これは定義データは6×8ドットなので最下位2ビットは使用されません  説明にあるキャラクタ表をみる限り64が正しいデータだと  思われます    ’85/05 BASICマガジン バクゲキキ SC−3000 LEVELII用 OK       2013年03月の打ち込み  ’87/09 BASICマガジン FORMATION SC SC−3000 LEVELIIIB用 OK     2013年02月の打ち込み  ’84/12 BASICマガジン 要塞 SC−3000 LEVELIII用 OK      ’85/04 BASICマガジン EGUOUS SC−3000 LEVELII用 OK(リスト抜け有り)    次号にリスト抜けの部分が掲載されています  リスト2に下記を追加   1 COLOR15,12:GOTO170   5 SCREEN1,1    ’86/02 BASICマガジン 橋掛人 SC−3000 LEVELII用 OK      ’85/09 BASICマガジン METEOヤメテオ SC−3000 LEVELII用 OK     2012年12月の打ち込み  ’84/02 BASICマガジン JUMPING CAR SC−3000 LEVELIII用 OK(リスト抜け有り)    次号にリスト抜けの部分が掲載されています     2011年05月の打ち込み  ’79/07 アスキー フィッシング・ゲーム PET2001−8用 OK    キャラクタで少々おかしいようですがリストではOK     2009年11月の打ち込み  ’79/10 アスキー アレンジ ボール PET2001用 OK       2009年 1月の打ち込み  ’79/06 アスキー DRAGONMAZE PET2001用 OK       2002年  9月の打ち込み  ’79/10 アスキー EXIT モニタ Apple II用 OK         Home へ戻る