mirror of
https://github.com/libretro/NP2kai.git
synced 2024-10-07 14:53:33 +00:00
fix to case of triple fault
This commit is contained in:
parent
8b01ece046
commit
a7964f2be1
@ -236,7 +236,9 @@ cpu_stack_push_check(UINT16 s, descriptor_t *sdp, UINT32 sp, UINT len,
|
||||
goto exc;
|
||||
}
|
||||
|
||||
start = sp - len;
|
||||
// start = sp - len;
|
||||
sp = (sp - 1) & (SEG_IS_32BIT(sdp) ? 0xffffffff : 0x0000ffff);
|
||||
start = (sp - len) & (SEG_IS_32BIT(sdp) ? 0xffffffff : 0x0000ffff);
|
||||
limit = is32bit ? 0xffffffff : 0x0000ffff;
|
||||
|
||||
if (SEG_IS_EXPANDDOWN_DATA(sdp)) {
|
||||
@ -320,7 +322,8 @@ cpu_stack_push_check(UINT16 s, descriptor_t *sdp, UINT32 sp, UINT len,
|
||||
*/
|
||||
if ((len > sdp->u.seg.limit) /* len check */
|
||||
|| (start > sp) /* wrap check */
|
||||
|| (sp > sdp->u.seg.limit + 1)) { /* [1] */
|
||||
// || (sp > sdp->u.seg.limit + 1)) { /* [1] */
|
||||
|| (sp > sdp->u.seg.limit)) { /* [1] */
|
||||
goto exc;
|
||||
}
|
||||
}
|
||||
|
10
kai_note.txt
10
kai_note.txt
@ -18,4 +18,14 @@ NP2 kai開発ノート by AZO
|
||||
=> モードレジスタ0x77に、0x70->0x50 の順に書かれたら、
|
||||
トキオ用の周期にするように突貫対応。
|
||||
|
||||
・LOADINTELWORDマクロが変な値を取得する
|
||||
|
||||
=> common.h にて、a を UINT8* にキャストするよう修正。
|
||||
|
||||
・ERCACHE.EXEの組み込み時にtriple fault発生
|
||||
|
||||
=> http://egg.2ch.net/test/read.cgi/software/1500009461/181-184
|
||||
の修正。
|
||||
|
||||
・VEM486 + Turbo C++ 4J(のTC.EXE)でtriple fault発生
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user