🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.atari.st
Article #35599

bios function 0x7f

#35599
From: to_stdnet
Date: Mon, 19 Dec 1988 21:12
49 lines
2649 bytes
From: dynasoft!john@stag.UUCP (John Stanley)

[apratt@atari.UUCP (Allan Pratt) writes...]

> In article <12076@hall.cray.com> rosenkra@hall.UUCP (Bill Rosenkranz) writes:
>> [...] it executes bios function 0x7F [...]
> 
> There is no such function.  The only way it could usefully do anything
> with that BIOS call is if it installed a handler itself, or if it
> is probing for another installed handler which it knows about.
> (That is, if some other product installs a handler for BIOS call 0x7f,
> and this program knows how to use that other product.)

  I'm suprised at you Allan...  It has nothing to do with seperate
installable handlers.  Hint: It pays attention to shift keys....

---

[rosenkra@hall.cray.com (Bill Rosenkranz) writes...]

> after disassembling a code i found on some bbs which doubles the effective
> on-screen travel of the mouse form, i found it ixecutes bios function 0x7F
> (which is not documented, at least in anything i have, including original
> developer's docs).  i thought it might be the disasm but after compiling 
> (with madmac) everything works fine. what is this puppy and what other
> undocumented treasures are worth knowing about? 

  This is how one obtains a pointer to the bios (or xbios) jump tables. 
This is actualy a -totaly- unintended fallout case that just happens to
occur because of the way the bios jump code is written...  Pass it
instructions to call any bios function that's not in the table, and it
will, as part of its error checking, realise this and return.  That the
pointer to the bios table just happens to be in one of the registers on
return is just a fortuitous side effect...

  The author probably adds $44 to the pointer and then saves the long it
points to.  This is a portable method for obtaining a pointer to the bios
function that returns the keyboard shift status...  The reason for doing
this is to allow a program to test the kb status while inside an
interrupt.  (Something that can't be done by just calling the bios...)

 ---
PS:  Please(!) note that my Reply-To address gets munged by the gateway
I'm currently using for news access so you can't just <r>eply to this
article and have your message get to me.  Please use the address below.

 ---
John Stanley (dynasoft!john@stag.UUCP)
Software Consultant / Dynasoft Systems
Technical Details
Message-ID: <678@stag.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!lll-winken!lll-lcc!ames!xanth!nic.MR.NET!shamash!rosevax!ems!pwcs!stag!daemon

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!lll-winken!lll-lcc!ames!xanth!nic.MR.NET!shamash!rosevax!ems!pwcs!stag!daemon
From: to_stdnet@stag.UUCP
Newsgroups: comp.sys.atari.st
Subject: bios function 0x7f
Message-ID: <678@stag.UUCP>
Date: 19 Dec 88 21:12:00 GMT
Sender: daemon@stag.UUCP
Lines: 48