Diff for /np2/update.txt between versions 1.40 and 1.57

version 1.40, 2004/01/05 14:16:34 version 1.57, 2004/01/28 23:36:12
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 - 標準ディスプレイ時にメモリを破壊するバグを修正
    ・ITF - PC-9801VM/PC-286時に BEEPが初期化されない不都合を修正
    ・ITF - SSP終了時にハードウェアリセットをかけるように修正
    ・IDE - ディップスィッチ内容を反映するように修正
    ・拡張メモリの修正 (80286)
   
   
    (Windows)
     ・(I286X) sidt命令の修正
     ・(I286X) テキストラムアクセスの修正
     ・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を読めるよーにしてみたり。
   
   
 // ----  // ----
   
Line 12 Line 88
   
  ・主にRISC向けの最適化、その2   ・主にRISC向けの最適化、その2
  ・EPSON PCシリーズのアーキテクチャをサポート   ・EPSON PCシリーズのアーキテクチャをサポート
    ・ARM版CPUコアのサポート
  ・CPU(I286C) … シングルステップ割り込みの修正   ・CPU(I286C) … シングルステップ割り込みの修正
  ・CPU(I286C) … int3 / int imm8 / into クロック数を修正   ・CPU(I286C) … int3 / int imm8 / into クロック数を修正
  ・CPU(I286C) … shl r/m8,cl / shr r/m8,cl の修正   ・CPU(I286C) … shl r/m8,cl / shr r/m8,cl の修正
  ・CPU(I286C) … sar r/m (eVC3/eVC4コンパイラバグ回避)   ・CPU(I286C) … sar r/m (eVC3/eVC4コンパイラバグ回避)
  ・CPU(I286C) … グループ7とか…   ・CPU(I286C/I286X/I286A) … グループ7とか…
  ・DMAC … インプットでアドレスとカウンタが逆なのを修正   ・DMAC … インプットでアドレスとカウンタが逆なのを修正
  ・PIT … ビープカウンタを修正   ・PIT … ビープカウンタを修正
  ・NP2SYSP … ポートを叩いた瞬間 フリーズするバグを修正   ・NP2SYSP … ポートを叩いた瞬間 フリーズするバグを修正
    ・CALENDAR … 時間をインクリメントしないバグの修正
  ・ITF … 拡張メモリ使用時にエミュレーション内部のメモリを破壊するのを修正   ・ITF … 拡張メモリ使用時にエミュレーション内部のメモリを破壊するのを修正
  ・CS4231 … 再生しなくなっていたのを修正   ・CS4231 … 再生しなくなっていたのを修正
  ・CS4231 … DMA,IRQを変更出来るようにしました   ・CS4231 … DMA,IRQを変更出来るようにしました
    ・CS4231 … デフォルトのDMAチャネルを #1に変更
  ・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 55 Line 129
    パラレルなので 機種依存部の COMMNG.Cを修正して CMJASTCを呼ぶ     パラレルなので 機種依存部の COMMNG.Cを修正して CMJASTCを呼ぶ
    使用・未使用判定は OSごとに(np2oscfgで)設定すること     使用・未使用判定は OSごとに(np2oscfgで)設定すること
   
     ・wavemix sound/getsnd については ver0.73では不要ですが、
      ver0.74あたりで使用する予定(Seeksnd?/OPNA/AMD-98の共用ルーチン化)
      今までのseeksndインタフェイスはどうするかね…
   
   
  更新履歴に書かなくていい変更点   更新履歴に書かなくていい変更点
   ・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...
   
   
 // ----  // ----

Removed from v.1.40  
changed lines
  Added in v.1.57


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