From Jcurtis@VERT to ALL on Tue Jun 24 20:27:48 2025
By trial and error I discovered EMM calls enable interrupts. This can
cause havoc in a TSR where you need interrupts disabled. Finding these
bugs is not easy. My TSR enables interrupts part of the time, so I do
EMM calls there. Here's an example with comments.
void
next_irq (void)
{
int x;
next:
x = next (); /* service IRQs with */
enable (); /* interrupts enabled */
# ifndef noemm /* EMM call enables interrupts, do */
emm_get_page_map (e1); /* not do it before enable () above */ # endif
if (x) {
service_com_irqs (x);
} else
service_ticktock ();
# ifndef noemm
emm_set_page_map (e1);
# endif
disable ();
if (x)
mask_irq (NO, x);
if (iq[iz])
goto next;
}
* SLMR 2.1a *
* SLMR 2.1a *
---
■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
Who's Online
Recent Visitors
Guest
Tue Mar 24 13:59:20 2026
from
Oakland, Ca
via
Telnet
realjameswilliam
Tue Mar 24 05:40:41 2026
via
HTTPS
Guest
Thu Mar 19 21:02:10 2026
from
One, Two
via
Telnet
Deepend
Wed Mar 18 08:26:50 2026
from
Calgary, Ab
via
HTTPS
System Info
Sysop:
deepend
Location:
Calgary, Alberta
Users:
297
Nodes:
10 (0
/
10)
Uptime:
49:43:05
Calls:
2,511
Files:
5,761
D/L today:
56 files
(14,308K bytes)
Messages:
465,195
Synchronet Oneliners
Vintagegeek@rdbbs Thu Mar 5 09:15:57 2026 To the Beach
Vintagegeek@rdbbs Fri Mar 6 17:07:01 2026 To The LifeBoats
Vintagegeek@rdbbs Sun Mar 8 10:57:24 2026 Firefly - Serenity
Kat@rdbbs Wed Mar 11 14:52:38 2026 Hello erryone!
Jmay@rdbbs Fri Mar 13 20:32:57 2026 Burning the oatmeal
Tsukaj@rdbbs Tue Mar 17 22:27:28 2026 hell yeah this is so cool