braner@batcomputer.UUCP (01/24/87)
[] >Reminder: 'Night' blanks out the screen after 2 minutes of no activity. >Any mouse or keyboard input, or any BIOS text output, will turn screen >on again. 'Killer' enables escape from hung-up programs: hold down the ><Control>, <Alternate>, and BOTH <Shift> keys and press <Return>. >'Nite' combines the two. There were two problems with 'night', as published in "C'T" magazine and posted here. When it was time to blank the screen, it waited till just before the next vblank. (That's necessary: the screen gets messed up if you don't!) But that is done inside the 200Hz interrupt handler, which is called more often than there are vblanks. Apparently, that caused problems when using SOME software. The other bug was that it decided that it's "just before vblank" when bit #7 of VMID was set. That's not right when the screen is not on an even 64K boundary. The following new version of NITE fixes both bugs, although I will NOT guarantee that it will now work with ANY software... A note about the 'killer' part of this program: It is DESIGNED not to have any effect if the running program is in supervisor mode. If your hung-up program is waiting for input or calling TOS very often you may have to press those keys several times, or it may not work at all. And remember: the 'killer' part won't work once the ROMs are changed! (The source code (in assembler language) is available upon request.) - Moshe Braner ~~~~~~~~~~~~~~~~ cut here ~~~~~~~~~~~~~~~~ begin 644 NITE.PRG M8!H &. & ,9.251% $CG@( @ M.@"L0?H K%*0L)!B,DIY QF8J$#B" >% $#B" S! $#B"!>% $#B"!Y!( M#$ ?6T,"/@ ((*4GD #&3-\! 2\Z_[).=4Y)5$4 83X(%P %9A0, M. /#AMF# C7 4O? #\"EH B\Z_]Y.=4Y)5$4 +P P+P *#$ V8" M80@@'R\Z_^I.=4IY QF<,"+@ ((*0GD #&0KD #"3G4 %W M 2'H -#\\ "9.3ER/2'H >C\\ E.05R/<@IP_U'(__Y1R?_X0?K_VI'O M 1"9R\(/SP ,4Y!('@!& RH3DE41?_X9QYP I*!0?H &B)P& D<!@,)G 8 M&"21(HM8@5'(_^Q.=0 +0 $8 !% (@ !> " (P !B M # T*"@E.251%.B!#4E0@<')O=&5C=&EO;B!A;F0@87-S87-S:6X@=71I D;&ET>2 M(&EN<W1A;&QE9"X-"@ ("Q8#@: ! 0$! 0 end