UI21DEB deBUGGER released | inreentrant mess (Announce)
> > The reason is simple: your code clears IF, which is a hint for any
> > debugger that a critical section is entered which isn't allowed to be
> > interrupted. The problem is that all DEBUGs ignore this signal - they
> > aren't designed to debug "low-level" code.
>
> IF is often meaningless if any form of multitasking is running.
If a DOS application does a CLI, it can safely assume that no hw interrupts will occur. It doesn't need to care about possible flaws in v86-monitors.
> The problem here is that even "normal" TSRs (not DEBUG) might want to use
> DOS functions reentrant in MS-DOS. Even the Int24 handler of COMMAND.COM
> might crash UI21DEB, because it (is allowed to and) calls some low
> functions (01h-0Ch) during another Int21 call.
I didn't scrutinize the TSRs code, but if all usages of global variables are protected by CLI, then it probably IS reentrant - the "single-step" exception doesn't really count.
---
MS-DOS forever!
Complete thread:
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - DOS386, 20.02.2009, 05:53 (Announce)
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - DOS386, 20.02.2009, 06:19
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - ecm, 20.02.2009, 20:19
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - DOS386, 24.02.2009, 06:02
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - Laaca, 24.02.2009, 10:28
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - rr, 24.02.2009, 21:43
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - DOS386, 25.02.2009, 03:06
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - ecm, 25.02.2009, 13:15
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - DOS386, 25.02.2009, 03:06
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - Japheth, 25.02.2009, 14:09
- UI21DEB deBUGGER released | the mess - DOS386, 01.03.2009, 08:24
- UI21DEB deBUGGER released | the mess - ecm, 01.03.2009, 10:40
- UI21DEB deBUGGER released | inreentrant mess - DOS386, 01.03.2009, 13:59
- UI21DEB deBUGGER released | inreentrant mess - ecm, 01.03.2009, 16:19
- UI21DEB deBUGGER released | inreentrant mess - Japheth, 02.03.2009, 07:48
- UI21DEB deBUGGER released | inreentrant mess - ecm, 02.03.2009, 15:28
- UI21DEB deBUGGER released | inreentrant mess - Japheth, 03.03.2009, 07:52
- UI21DEB deBUGGER released | crappy and incrappy stuff - DOS386, 15.03.2009, 02:39
- UI21DEB deBUGGER released | crappy and incrappy stuff - Japheth, 15.03.2009, 08:17
- UI21DEB deBUGGER released | crappy and incrappy stuff - ecm, 15.03.2009, 21:02
- UI21DEB deBUGGER released | inreentrant mess - ecm, 02.03.2009, 15:28
- UI21DEB deBUGGER released | inreentrant mess - DOS386, 01.03.2009, 13:59
- UI21DEB deBUGGER released | the mess - ecm, 01.03.2009, 10:40
- UI21DEB deBUGGER released | the mess - DOS386, 01.03.2009, 08:24
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - DOS386, 24.02.2009, 06:02
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - Laaca, 20.02.2009, 20:21
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - ecm, 20.02.2009, 20:19
- UI21DEB deBUGGER rele | DGJPP's persistent ENOENT bugginess - DOS386, 20.02.2009, 06:19