🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: mod.computers.68k
Article #21

The BDOS *DOES* reinit trap #0 and trap #1 on warm boot

#21
From: RDROYA01
Date: Sat, 24 May 1986 15:55
20 lines
1803 bytes

I just finished disassembling cpmlib and have discovered that the _initexc
(offset $4718) initializes all vectors from 2-25, 32, 33, and 36-47.  It
does this by setting a counter = 2 placing that counter in d1, placing an
address in d2, setting d0=$16, and calling trap #3.  It then increments the
counter in d1, the address in d2, and calls trap #3.  In the first step,
this process continues until d1=$18.  Then d1 is set to $20 (trap #0
vector), d1 is compared to $22 and $23.  On not equal trap #3 is again
called to reset this vector.  d1 is again incremented, compared to $22 and
$23, and again on not equal the vector is reset.  This incrementing and
setting continues until all traps are reset to the default handler.  The
_initexc is called by _warmboo everytime the system is reset.  So this means
that it is not the bios which is slacking off in its job but the bdos itself
which resets the two trap vectors (trap #0 and trap #1) guaranteed not to
*ever* be reset by the bdos (see section 4.6.1 of the _CP/M-68K Programmer's
Guide_).  This means that resident system extensions, as described by DRI,
cannot work.  Isn't this surely a bug?

                           rdroya01@ulkyvx.bitnet
Technical Details
Message-ID: <8605242109.AA08814@ucbjade.Berkeley.Edu>
Path: arc1-ca.pugleaf.net!utzoo!decvax!decwrl!ucbvax!ULKYVX.BITNET!RDROYA01

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!decvax!decwrl!ucbvax!ULKYVX.BITNET!RDROYA01
From: RDROYA01@ULKYVX.BITNET.UUCP
Newsgroups: mod.computers.68k
Subject: The BDOS *DOES* reinit trap #0 and trap #1 on warm boot
Message-ID: <8605242109.AA08814@ucbjade.Berkeley.Edu>
Date: Sat, 24-May-86 11:55:00 EDT
Article-I.D.: ucbjade.8605242109.AA08814
Posted: Sat May 24 11:55:00 1986
Date-Received: Sun, 25-May-86 10:48:44 EDT
Sender: mwm@ucbvax.BERKELEY.EDU
Organization: University of Louisville
Lines: 20
Approved: info-68k@ucbvax.berkeley.edu