Reply 120 of 140, by cookertron
aVd wrote on 2026-04-03, 20:25:I just start DOSBox, go to TEDIT version 0.68 (the one without recursion protection) directory ("cd tedit"), start TEDIT 0.68 wi […]
cookertron wrote on 2026-04-03, 19:06:aVd wrote on 2026-04-03, 17:50:After a quick first test of TEDIT version 0.68 (in DOSBox as usually), now it seems like now using the <F1> keyboard shortcut causes the same problem even if no file is opened from the command line.
Can you explain that issue a little more please?
I just start DOSBox, go to TEDIT version 0.68 (the one without recursion protection) directory ("cd tedit"), start TEDIT 0.68 with no text file opened ("tedit"), then press <F1>, and get this with lock:
With DOSBox-X the lock happens a bit earlier, as I don't see the "colored prompt".
With the previous version 0.65 I got similar problems, but when I was using SHROOM and open at least one text file with TEDIT's start from the command prompt ("shroom tedit text.txt").
P.S. Just tried other key combo for the menu navigation with keyboard only: <Alt>+<V>, then <D> or <Enter> and the locking bug appears.
Forgot to mention - it happen often, but not on every tryout and only the mouse cursor can be moved after.
cookertron wrote on 2026-04-03, 19:06:The answer is to prevent a new instance of TEDIT from spawning similar to how a TSR prevents multiple versions of itself loading […]
The answer is to prevent a new instance of TEDIT from spawning similar to how a TSR prevents multiple versions of itself loading into memory. Either create a TEDIT.LCK file when dropping to DOS and check it exists on start up when the user tries to invoke new instance of TEDIT - if it exists then notify and terminate. The other method is to use INT 2Fh Multiplex Instance Detection, which is what the TSR's use. MDI basically allows programs in memory to talk to each other, TEDIT can talk to TEDIT and ask, "Are you here" - if nothing comes back then it's OK to start up.
Re-release v0.68 https://github.com/cookertron/TEDIT
- Spawning a new instance of TEDIT after shelling to DOS results in detection, notification, termination. (see attached image)
Nice! I hope you're using the second method, so no more new temporary files are generated 😀
WOW! That's a pretty major bug right there. I'll get on that straight away 😒
EDIT: FIXED!
Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V