Diff for /np2/update.txt between versions 1.44 and 1.67

version 1.44, 2004/01/10 17:24:01 version 1.67, 2004/02/07 21:23:21
Line 5 Line 5
  mov SS直後に割り込みが発生するとか不都合があります。   mov SS直後に割り込みが発生するとか不都合があります。
  これについては、直す気力があれば(286コードを追っかける時だけだし…)   これについては、直す気力があれば(286コードを追っかける時だけだし…)
   
   // ---- IA-32 info
   
     ・CPU panic や警告表示時に msgbox() という API を使用します。
       compiler.h あたりで適当に定義してください。
   
     ・sigsetjmp(3), siglongjmp(3) が無いアーキテクチャは以下の define を
       compiler.h あたりに追加してください。
   
   -------------------------------------------------------------------------------
   #define sigjmp_buf              jmp_buf
   #define sigsetjmp(env, mask)    setjmp(env)
   #define siglongjmp(env, val)    longjmp(env, val)
   -------------------------------------------------------------------------------
   
   // ----
   
    ver0.73 → ver0.74
   
    ・I/OレベルでのSASIに対応(INT3/DMA#0/BIOS:d0000-d0fff)
    ・SCSI HDDに対応
    ・np2qn形式 HOSTDRVに対応
    ・BIOS - ブート時にディップスイッチで指定した画面モードを反映
    ・VRAM - 標準ディスプレイ時にメモリを破壊するバグを修正
    ・EGC - マスクフラグを修正
    ・GDC - テキスト処理を修正(cmd:05)
    ・GDC - GRCG,EGC動作中の挙動を修正
    ・SERIAL - キーボードステータスの修正
    ・RHYTHM - レジュームが反映されなかった不都合を修正
    ・ITF - PC-9801VM/PC-286時に BEEPが初期化されない不都合を修正
    ・ITF - SSP終了時にハードウェアリセットをかけるように修正
    ・IDE - ディップスイッチ内容(SW2-6)を反映するように修正
    ・拡張メモリの修正 (80286)
   
   
    (Windows)
     ・(I286X) sidt命令の修正
     ・(I286X) テキストラムアクセスの修正
     ・(I286X) 割り込みの修正
     ・(I286X) EGCシフタを修正
     ・Aboutダイアログの修正
     ・ろみおとか…
   
    (MacOS9)
     ・テンキーの [+] [/] の修正
     ・file_attr()で FILEATTR_READONLY を返すように…
   
    (MacOSX)
     ・テンキーの [+] [/] の修正
     ・file_attr()で FILEATTR_READONLY を返すように…
     ・ToolWindowとか
   
   
    ・内部変更
      pccore.h の中で statsave.hをインクルード
       → #include "statsave.h" をトル
   
      io/extmem を io/emsioに変更
      (IA32は emsioは要らないが、NEC EMSバンク形式で必要になるかも)
   
      np2cfg.hddfile[2] -> np2cfg.sasihdd[2]
   
      void diskdrv_sethdd(REG8 drv, const char *fname);
       drv = BIOSのデバイス番号
        0x00〜0x01  SASI #0-1
        0x20〜0x23  SCSI #0-3  (SUPPORT_SCSIを定義した時のみ)
   
      bios/sxsibios.c はリンク必須
      cbus/sasiio.c - SUPPORT_SCSIを定義した時にリンク
      cbus/scsiio.c cbus/scsicmd.c - SUPPORT_SCSIを定義した時にリンク
   
      IA32でハードウェアEMSを禁止しました。
        → #define CPU_SETEXTSIZE() init_mem() に変更 (済)
        → memory.cの EMM部分をトル (済)
        → cpumem extmem_size を CPU_EXTMEM, CPU_EXTMEMSIZEに変更(済)
        → protectmem_sizeをトル (済)
   
      しかし emm386.exeが使えないから ハードウェアEMSを有効にした
      ほーがいいかな? 辻褄は合いそうだし。
      386以降に乗っかってる NEC EMSバンク方式だと あまりにアホだし。
   
      dosio.hの FTYPEを common.hへ移動。
      こそーり fdiを読めるよーにしてみたり。
   
      フロッピードライブについて np2cfg.fddequipを見に行くようにしました
      デフォルトで2基
      np2cfg.fddequip = 0x03 (ドライブ1 = ビット0 〜 ドライブ4 = ビット3)
      (実際に動作中の装備状態は fdc.equipで リセット時に更新されます)
      必要によって main()で変える、cfgに書き出す等してください。
   
      S98について SUPPORT_S98定義時のみリンクするようにしました。
      (Win9x, MacOSX, x11(USE_GTK))
   
      PC9861Kについて SUPPORT_PC9861K定義時のみリンクするようにしました。
      (シリアル通信に対応していなければ無意味な機能です)
   
   
    メモ
     実機で FDでVRAMクリアされるのは何故?
   
   
 // ----  // ----
   
Line 21 Line 120
  ・DMAC … インプットでアドレスとカウンタが逆なのを修正   ・DMAC … インプットでアドレスとカウンタが逆なのを修正
  ・PIT … ビープカウンタを修正   ・PIT … ビープカウンタを修正
  ・NP2SYSP … ポートを叩いた瞬間 フリーズするバグを修正   ・NP2SYSP … ポートを叩いた瞬間 フリーズするバグを修正
    ・CALENDAR … 時間をインクリメントしないバグの修正
  ・ITF … 拡張メモリ使用時にエミュレーション内部のメモリを破壊するのを修正   ・ITF … 拡張メモリ使用時にエミュレーション内部のメモリを破壊するのを修正
  ・CS4231 … 再生しなくなっていたのを修正   ・CS4231 … 再生しなくなっていたのを修正
  ・CS4231 … DMA,IRQを変更出来るようにしました   ・CS4231 … DMA,IRQを変更出来るようにしました
Line 28 Line 128
  ・MIDI … STATSAVEの修正   ・MIDI … STATSAVEの修正
  ・SOUND … JAST SOUNDをサポート   ・SOUND … JAST SOUNDをサポート
  ・Vermouth … Roland GSコマンドの一部に対応   ・Vermouth … Roland GSコマンドの一部に対応
  ・BIOS … DISK BIOSをサポート(但し 通常のBIOSコールは DISK BIOSを使用せずに BIOSレベルでシミュレートしています)  
  ・BIOS … SASI/SCSI BIOS ROMをサポート(BIOSアドレス d000:0000)  
   
  補足   補足
   ver0.73では EPSONモードの時 D000〜DFFFがRAM化されます。    ver0.73では EPSONモードの時 D000〜DFFFがRAM化されます。
   ・SOUND BIOSは D000,D400に配置しないで下さい、もしくはUMB等で破壊されないようにして下さい。    ・SOUND BIOSは D000,D400に配置しないで下さい、もしくはUMB等で破壊されないようにして下さい。
   ・SASI/SCSI BIOSについては 殆どの場合にはブート時にしか使っていないので RAM内容を破壊しても HDDアクセスは正常に行なわれます。  
    ※アプリケーションが SASI/SCSI BIOSを直視しない限りは大丈夫。  
     ver0.72までは SASI/SCSI BIOSがサポートされていない(=つまり使われていない) ver0.72までに動いていたソフトウェアはほぼ大丈夫と言えます。  
   
   
  (X11)   (X11)
Line 66 Line 161
   ・i286a/i286c/i286xに簡易プロテクトモードを追加(保護・タスクなし)    ・i286a/i286c/i286xに簡易プロテクトモードを追加(保護・タスクなし)
   ・DMACを再配置できるように修正    ・DMACを再配置できるように修正
   ・CPU/EGCのストラクチャの調整    ・CPU/EGCのストラクチャの調整
     ・BIOS … DISK BIOSをサポート(但し 通常のBIOSコールは DISK BIOSを使用せずに BIOSレベルでシミュレートしています)
     ・BIOS … SASI/SCSI BIOS ROMをサポート(BIOSアドレス d000:0000)
      補足→ (ver0.74に回す)
       SASI/SCSI BIOSは 殆どの場合にはブート時にしか使っていないので RAM内容を破壊しても HDDアクセスは正常に行なわれます。
       ※アプリケーションが SASI/SCSI BIOSを直視しない限りは大丈夫。
        ver0.72までは SASI/SCSI BIOSがサポートされていない(=つまり使われていない) ver0.72までに動いていたソフトウェアはほぼ大丈夫と言えます。
   ・hostdrv...    ・hostdrv...
   
   

Removed from v.1.44  
changed lines
  Added in v.1.67


RetroPC.NET-CVS <cvs@retropc.net>