Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: Make a TSR

3 views
Skip to first unread message

Rod Pemberton

unread,
May 11, 2008, 1:24:02 PM5/11/08
to
"almas" <al...@naburo.com> wrote in message
news:482722f9$0$854$ba4a...@news.orange.fr...
> Hi everybody.
> I found a file : display time....
> i modify it, the aim make a noise, or a red screen
>
> In version "No TSR" it is ok, but computer must wait.
> In version TSR, it is not ok.

(I added comp.os.msdos.programmer in case someone there wants to help with
your TSR.)

Ben Lunt's TSR demo:
http://www.frontiernet.net/~fys/tsrdemo.htm

> I try on cession DOS of Windows XP

TSR under XP?. DOS under XP doesn't work quite correctly.

E.g., one issue with XP is that it doesn't update BIOS variables unless a
BIOS call is made:
http://groups.google.com/group/comp.os.msdos.djgpp/msg/67916cf4c1c73b7e?hl=en
http://groups.google.com/group/comp.os.msdos.djgpp/msg/30ac39382eb3560e?hl=en

<Almas' TSR code snipped. Can be read here.>
http://groups.google.com/group/alt.lang.asm/msg/9de6cb772bb707ba


Rod Pemberton

Benjamin David Lunt

unread,
May 11, 2008, 3:18:11 PM5/11/08
to

"Rod Pemberton" <do_no...@nohavenot.cmm> wrote in message
news:g079v9$uib$1...@aioe.org...

>
> TSR under XP?. DOS under XP doesn't work quite correctly.
>
> E.g., one issue with XP is that it doesn't update BIOS variables unless a
> BIOS call is made:
> http://groups.google.com/group/comp.os.msdos.djgpp/msg/67916cf4c1c73b7e?hl=en
> http://groups.google.com/group/comp.os.msdos.djgpp/msg/30ac39382eb3560e?hl=en
>

Hi Rod,

I threw together list little code snippet to see for myself. It seems
to update the timer tick just fine. It could be that WinXP emulates
the write to video memory by calling the BIOS print char service call.
I have WinXP SP2 [version 5.1.2600 is displayed at DOS prompt]

; -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
; assemble using NBASM (http://www.frontiernet.net/~fys/newbasic.htm)
.model tiny
.code
.386

org 100h

xor ax,ax
mov es,ax
mov si,046Ch


; depending on you CPU speed, adjust this value. It
; is simply a delay to end the program so we don't call
; a BIOS routine to check for keypress or something.
mov ecx,400000
main_loop: mov ax,es:[si]
call prthex
dec ecx
jnz main_loop

.exit

prthex proc near uses ax cx dx es di

mov cx,0B800h
mov es,cx
xor di,di

mov cx,04
PLoop: rol ax,04 ;
push ax ;
and al,0Fh ;
daa ;
add al,0F0h ;
adc al,40h ;

mov ah,07h
stosw

pop ax ;
loop PLoop ;
ret
prthex endp

.end
; -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Rod Pemberton

unread,
May 14, 2008, 3:39:18 PM5/14/08
to
"Benjamin David Lunt" <zf...@frontiernet.net> wrote in message
news:HFHVj.53628$kl6....@fe103.usenetserver.com...

> "Rod Pemberton" <do_no...@nohavenot.cmm> wrote in message
> news:g079v9$uib$1...@aioe.org...
> >
> > TSR under XP?. DOS under XP doesn't work quite correctly.
> >
> > E.g., one issue with XP is that it doesn't update BIOS variables unless
a
> > BIOS call is made:
> >
http://groups.google.com/group/comp.os.msdos.djgpp/msg/67916cf4c1c73b7e?hl=en
> >
http://groups.google.com/group/comp.os.msdos.djgpp/msg/30ac39382eb3560e?hl=en
> >
>
> I threw together list little code snippet to see for myself. It seems
> to update the timer tick just fine. It could be that WinXP emulates
> the write to video memory by calling the BIOS print char service call.
> I have WinXP SP2 [version 5.1.2600 is displayed at DOS prompt]

Thanks.

Now I'm wondering if the error he found is/was in DJGPP. Anyway, I'll stop
passing that information along assuming that whatever the problem was has
been fixed or was erroneous.

So, you tried and fixed Almas' TSR too? :-)


Rod Pemberton

Benjamin David Lunt

unread,
May 15, 2008, 11:23:48 AM5/15/08
to

"Rod Pemberton" <do_no...@nohavenot.cmm> wrote in message
news:g0ff0n$d59$1...@localhost.localdomain...

> "Benjamin David Lunt" <zf...@frontiernet.net> wrote in message
> news:HFHVj.53628$kl6....@fe103.usenetserver.com...
>>
>> I threw together list little code snippet to see for myself. It seems
>> to update the timer tick just fine. It could be that WinXP emulates
>> the write to video memory by calling the BIOS print char service call.
>> I have WinXP SP2 [version 5.1.2600 is displayed at DOS prompt]
>
> Thanks.
>
> Now I'm wondering if the error he found is/was in DJGPP. Anyway, I'll
> stop
> passing that information along assuming that whatever the problem was has
> been fixed or was erroneous.
>
> So, you tried and fixed Almas' TSR too? :-)

No. I didn't look at the code. I was just interested in the
timer tick. I thought for sure that WinXP would keep it tick'n
like it should.

Ben


0 new messages