| version 1.40, 2004/01/05 14:16:34 | version 1.51, 2004/01/23 16:29:14 | 
| 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に対応 | 
 |  | ・SCSI HDDに対応 | 
 |  | ・np2qn形式 HOSTDRVに対応 | 
 |  | ・BIOS - ブート時にディップスイッチで指定した画面モードを反映 | 
 |  | ・VRAM - 標準ディスプレイ時にメモリを破壊するバグを修正 | 
 |  | ・ITF - SSP終了時にハードウェアリセットをかけるように修正 | 
 |  | ・IDE - ディップスィッチ内容を反映するように修正 | 
 |  | ・拡張メモリの修正 (80286) | 
 |  |  | 
 |  |  | 
 |  | (Windows) | 
 |  | ・Aboutダイアログの修正 | 
 |  |  | 
 |  | (MacOS9) | 
 |  | ・テンキーの [+] [/] の修正 | 
 |  | ・file_attr()で FILEATTR_READONLY を返すように… | 
 |  |  | 
 |  |  | 
 |  | ・内部変更 | 
 |  | pccore.h の中で statsave.hをインクルード | 
 |  | → #include "statsave.h" をトル | 
 |  |  | 
 |  | 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を禁止しました。 | 
 |  | ※コア側のインタフェイスを調整後に… | 
 |  | → init_mem() トル | 
 |  | → cpumem, extmem_size, protectmem_sizeを | 
 |  | CPU_EXTMEM, CPU_EXTMEMSIZEに変更 | 
 |  | → リアルアドレス C0000-CFFFFのメモリリードライト変更 | 
 |  | むしろ メモリ確保はそれぞれの CPUルーチンに入れるべきか? | 
 |  |  | 
 |  |  | 
 | // ---- | // ---- | 
 |  |  | 
| Line 12 | Line 72 | 
 |  |  | 
 | ・主に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 113 | 
 | パラレルなので 機種依存部の 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... | 
 |  |  | 
 |  |  | 
 | // ---- | // ---- |