textfiles/apple/ADC/adv.900814

557 lines
26 KiB
Plaintext

America Online
APPLE II DEVELOPMENT FORUM CONFERENCE LOG
Tuesday, August 14, 1990 10:00 p.m. eastern time
Topic: Assembly Language Programming
Forum Leader: Gary Jacobson (AFA Gary J)
AFA Gary J Welcome to the Apple II Development Forum.
AFA Gary J Tonights' topic is Assembly Language Programming.
AFA Gary J Ok. That's official enough. :)
AFA Gary J Let's get on with it (heh heh).
PeterK75 8-bit machines?
AFA Gary J For 8 or 16 bit, Peter. As long as it's Apple II.
Dave Lyons My turn?
AFA Gary J Uh, lets let John announce his t-shirts first.
AFA Gary J GA, John.
A2Evanglst II Infinitum has been growing into a more and more formal
Organization in the
A2Evanglst last few months.
A2Evanglst Jerry and I have been discussing what we wanted the future of II
Infinitum to
A2Evanglst be. It sees that the organization main purpose is to evangelize
the Apple II
A2Evanglst and make it known that the computer is by no means dead.
A2Evanglst There is talk of a II Infinitum Newsletter, which will highlight
companies
A2Evanglst that are doing Apple II development and it will direct mail
campaigns and
A2Evanglst try to apply pressure to companies that aren't doing Apple II
Development.
A2Evanglst To help with the money of such a project, Jerry and I have decided
that one
A2Evanglst of the biggest and best Evangelical tools (learned from Apple) is
Teeshirts
A2Evanglst We are in the process of printing up II Infinitum Teeshirts.
These teeshirts
A2Evanglst will be sold to help raise money to let II Infinitum be self
supporting.
A2Evanglst Ordering Info and Size Information is in Across the boards or if
you wish you
A2Evanglst can leave me email and I will send you the information to your
Screen Address
A2Evanglst The Teeshirts will be selling for 10.00 and 2.50 S&H
A2Evanglst and there are breaks for quantity orders.
A2Evanglst There is also other stuff that will be available but at this time
we are
A2Evanglst doing just buttons and Teeshirts :)
A2Evanglst There is online ordering available at my Screen address...
A2Evanglst Thanks for your Attention and II Infinitum :)
A2Evanglst ga
AFA Gary J Thanks, John. I'm glad to see some organization behind this
Apple II push.
AFA Gary J The t-shirts sound neat.
AFA Gary J Ok, Before we get on to our questions this evening, Dave Lyons
has an announce-
AFA Gary J ment to make.
AFA Gary J GA Dave (then we'll get our questions )
Dave Lyons Good news! Speaking of the Apple II not being dead, I recently
accepted a job in Apple II
Dave Lyons System Software, working on the GS Toolbox. This is effective
August 27, and I'm enthusiastic
Dave Lyons about it. Don't everybody instant-message me your toolbox ideas,
but feel free to email & post in
Dave Lyons Let's Discuss under the GS Toolbox folder! ga
RMY Congrats Dave :)
A2GS Congratulations DAVE!!!
A2Evanglst Great!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!
AFL Floyd Wow! Great news, Dave.
AFA Gary J Great!!
A2Evanglst !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
PeterK75 Congrats!
A2Evanglst ())()()()()()()()()()()()()()()()()]
Nuzz WTG Dave
A2Evanglst <----- very Happy !!!!!
Matt DTS (He would have taken a job spit-shining Mac power supplies to not
sit next to me anymore.)
AFA Gary J (I was wondering about Tool 42, Nifty Tool?)
A2Evanglst Gary, Isn't that the tool that makes your IIgs go into Debugging
Tangents???
Nagendra nice to hear that dave
AFL Floyd I guess you're going to show Jim M. how it's done, huh? ;)
Dave Lyons :)
AFL Scott Whoa!!!!!! GREAT!!!
AFA Gary J That's great, Dave. Good news for all of us.
A2Evanglst But does this mean that we don't get to see your name on Tech
Notes anymore???
Dave Lyons John, not necessarily...I can still do some technotes by remote
control....
Matt DTS (Don't tempt me to comment on how he wrote the ones he's already
done...)
JeffreyH11 He'll be fixing the bugs now, instead of telling us how to get
around them. :)
A2Evanglst <grin>
Dave Lyons (Well, JH, you'll probably still get workarounds first, and then
solutions. We can't crank out
Dave Lyons new system disks every weekend, unfortuantely.)
JeffreyH11 I'll settle for every month.
Nagendra me too
AFA Gary J Ok, Let's use Protocol starting now, and get to our assembly
language questions
AFA Gary J for this evening. I'll keep track of the queue and call on you
in turn.
PeterK75 Uh...how's Protocol work?
AFA Gary J Protocol: If you have a question, type a "?" on a line by
itself
AFA Gary J if you have a comment on the current topic, type a "!" on a line
by itself.
AFA Gary J Ok, A2GS has our first question this evening. GA A2
A2GS If you run an Application for example through your sys. disk and
the app uses
A2GS the SFO toolset, when you actually are in the app. and you select
something
A2GS which uses the SFOT, for some reasons the system (GS) hangs with
an open
A2GS dialog window and seems to be in LA-LA land, why? (BTW this
happens only if
A2GS you take out your sys. disk before pulling up the Dialog and
replacing it with
A2GS another volume)
A2GS GA
AFA Gary J GA, Jeffrey
JeffreyH11 I recall Andy Nicholas mentioning this problem in the docs for
Shrinkit-GS. It
JeffreyH11 seems that if you try to do a SFO call and it can't find prefix 0
online, the
JeffreyH11 OS hangs. Perhaps that's one of the fixes that Dave can work on.
:) GA
A2GS (Didn't read them)
A2GS Dave?? Is this a bug or what? Is there a fix?
AFA Gary J GA, Dave (he already has a fix?)
Dave Lyons I believe this one is already cleared up for the next version of
the system software, without
Dave Lyons my help. ga
A2GS Yeah, wait for 6.0 :)
A2GS So the only way to get around it now is to leave prefix 0
online?
AFA Gary J GA, Dave
A2GS (till the Dialog is up, that is)
Dave Lyons Ummm...if it's the problem I'm thinking of, you could do it two
ways:
Dave Lyons leave the prefix-0 disk online until the dialog is up (yes) or
have your app zero out the Standard
Dave Lyons File direct-page space after you allocate it but before you call
SFStartUp. ga
A2GS Thanx, I'll try it
AFA Gary J GA, Jeffrey
JeffreyH11 Is it a problem with GS/OS or with SFO?
Dave Lyons (It's a Standard File problem, not an OS problem.)
AFA Gary J Ok, Nagendra has the next question. GA Nagendra
Nagendra ok I'm not sure if this is the right place to ask, but is there a
way for
Nagendra incorporating assembly lang into TML II code?
AFA Gary J Of course this is the right place to ask. :) (But having
ORCA/Pascal and not
AFA Gary J TML, I don't know) But Dave does. GA Dave :)
Dave Lyons It can be done, but it's a pain. In the
Dave Lyons ADV source code libraries you'll find a CallByPtr module I
uploaded a while ago that demonstrates
Dave Lyons building an assembly routine (for calling other assembly routines)
using INLINE procedures. You
Dave Lyons get to build it one byte at a time that way. It's a task for the
determined & experienced assembly
Dave Lyons programmer. ga
AFA Gary J Thanks, Dave. Any follow up question, Nagendra?
Nagendra ok like testing your code somewhere else and then entering the
code as a string
Nagendra and then calling a toolcall to that string?
Nagendra another question
Nagendra in a technote for fastgraphics someone said to move the stack
Nagendra onto the graphic display and then just push stuff onto the
stack.
Nagendra exactly how do you move the stack around?
AFA Gary J Are you talking about Apple's Tech Note #70?
Nagendra I think so
AFA Gary J (Or the other one by DYA Jim?)
A2GS Do you know the procedure for putting the stack into bank $01,
first of all...
Nagendra no
A2GS to move the stack around just use a LDA #stack ADRS, TCS
A2GS you could also use LDX,TXS....you should turn off interrupts when
your using
A2GS the stack for fast moving or you'll get garbage on your graphics
screen which
A2GS is actually the return address' and other info pushed onto the
stack when an
A2GS interrupt occurs and is being handled...to put the stack into bank
$01 from
A2GS it's usual location in bank $00, you can either flip softswitch
$c019 or you
A2GS can produce the same effect by (I think) clearing (or is it
setting, I forget)
A2GS the hi-bit in $c068.
AFA Gary J GA, Jeffrey
JeffreyH11 and avoid using JSR, push, pop, etc.
JeffreyH11 $C009, not $C019 (I just looked it up). WARNING!! if this
functions the
JeffreyH11 way the 8-bit Apple II manuals say it does, it affects only pages
0,1, and
JeffreyH11 $D0 and up. This doesn't include the graphics area. Also, in
order for any
JeffreyH11 of this to work, I/O shadowing for SHR must be enabled, or your
writes to
JeffreyH11 bank $1 will be ignored by the video hardware.
A2GS oops, sorry
Dave Lyons (Then that's not the softswitch you want!)
AFA Gary J All the methods I've seen have used $C068.
A2GS I've seen $c009 used, but I always use $c068
A2GS Shadowing is controlled by $c035
AFA Gary J GA, Matt
Matt DTS The confusion is the term "moving the stack" onto the screen.
Matt DTS You can flip old 8-bit style softswitches that make the emulation
mode stack read from bank one
Matt DTS instead of bank zero, but that's not relevant here.
Matt DTS What you want to do is flip softswitches so that the auxiliary
(bank one) 48K is mapped into the main
Matt DTS (bank zero) 48K. Then all accesses to bank zero will actually get
memory in bank one.
Matt DTS Then you change the *native* stack pointer to be in bank zero
between $2000 and $9FFF.
Matt DTS When it touches the stack, it really hits bank one, and the
hardware shadowing makes it go to bank $E1
Matt DTS instead. Hence "screen onto the stack." GA.
AFA Gary J Thanks, Matt. Anything else, Nagendra? (If not, we'll move on
to Peter's question)
Nagendra nope GA.
AFA Gary J OK, GA Peter
PeterK75 Back to 8-bits - In Prodos 8, I'm trying to input lines from a
text file with the MLI, using NEWLINE
PeterK75 and READ. I know it's not an empty file, but it gives me an EOF
error on the first read.
PeterK75 Anything?
AFA Gary J GA Dave
Dave Lyons Peter, what value are you passing for request-count? You might
get an
Dave Lyons EOF error if you ask to read 0 bytes.
PeterK75 Nope, $FF
Dave Lyons Hmmm. I tried it & couldn't get an error anyway. Can you send a
small test case (executable
Dave Lyons code)? I'm pretty much stumped.
PeterK75 Uploading code might be hard - I'm using a Mac to access AOL!
Dave Lyons Don't you have Apple File Exchange?
Dave Lyons I'm using a Mac too.
Matt DTS (So am I - it leaves the GS free for important stuff.)
Matt DTS The P8 Tech Ref says that the EOF error will be returned if and
only if zero bytes were transferred.
Dave Lyons What's your enable mask & newline character?
PeterK75 Enable mask=$7F; Newline char = $0D.
AFA Gary J GA, Jeffrey
JeffreyH11 Exploring Apple GS/OS and PRoDOS 8 says the same thing.
JeffreyH11 There shouldn't be a problem unless it really read 0 characters.
Matt DTS Uh...is there actual data in the file, or does it have an EOF of
zero?
PeterK75 I checked the buffer - no characters in there.
PeterK75 And the file can be read with other programs.
JeffreyH11 Did you check for errors on the OPEN call?
PeterK75 Yup
Dave Lyons Error on Open would almost certainly get you an invalid reference
number error ($43) on the Read,
Dave Lyons unless you happened to have a valid number for some -other- file
in the parameter block.
JeffreyH11 Dave: agreed.
JeffreyH11 Matt or Dave - doesn't P8 automatically read in the first 1K on
OPEN?
Dave Lyons Jeff, doesn't matter. It may internally, but there's no problem.
I've been playing with it in
Dave Lyons the exerciser, even, and it's working great.
Matt DTS It reads the index block into half of the buffer, but I don't know
if it puts a data block in the
Matt DTS other half until something's read or not.
Matt DTS (This is why Dave and I use Macs for conferences. :)
Dave Lyons What -is- the file's EOF? (For ex, what's ENDFILE when you
CATALOG it in BASIC.SYSTEM?)
Dave Lyons What version of P8 are you using, BTW?
PeterK75 Version 1.8, and I'd have to check the EOF
Dave Lyons Hmmm...I vote that it's empty. :-)
PeterK75 No, I put it there and checked it repeatedly myself.
Dave Lyons And it's definitely the first READ call, and you didn't do any
SET_MARKs?
JeffreyH11 Use the "Show Catalog" command on the FILE menu, and tell us the
number before
JeffreyH11 the "R"
PeterK75 I did a SET_MARK to 0 before the READ.
PeterK75 But that had no errors.
Dave Lyons Do you have any other files open?
PeterK75 Yes.
Dave Lyons Hmmm...my second vote is the Read accidentally has the reference
number of some -other- file, which
Dave Lyons has its mark at the EOF already.
PeterK75 It shouldn't be - I set the parameters and then call the READ all
in a separate subroutine.
A2GS Must be a P8 bug :)
PeterK75 Wonderful.
Dave Lyons Well...I'm out of guesses without seeing it fry in front of me.
If you don't get unstuck, send me
Dave Lyons some code. I -don't- think it's a P8 bug. Davex works too well,
with lots of open files. ga
A2GS Does it do any NEWLINE calls though? :)
Dave Lyons I think I use NewLine a couple of places--would have to check.
JeffreyH11 I bet it does -- in pg and type, at least.
AFA Gary J Peter: Why don't you either upload some code to Dave, or post
some code in
AFA Gary J "Let's Discuss..." and we'll all take a stab at it.
PeterK75 OK - I'll get it up tomorrow evening. Next... GA.
PeterK75 Well, I hate to interrupt - But I found my bug.
Dave Lyons (Peter, what was the problem?)
AFA Gary J Where was it, Peter?
PeterK75 1 out of many, many lines of code disappeared - the one telling
OPEN where its parms were. Oh well.
PeterK75 Sorry about that. GA.
Dave Lyons :) thought it would be something like that....
AFA Gary J Ok, RMY has the next question. GA RMY
RMY Thanks....
RMY Having a problem with QDStartup with shadowing and fast port
aware...
RMY I am using Micol Advanced Basic with assembly language library
routines...
RMY I have patched the Micol library to start QD with fastport aware
and
RMY shadowing
Dave Lyons What's the problem?
RMY My first call to QD prints a message on the SHR screen using
DrawString
RMY There is some garbage on the screen on the same line as the font
RMY after that, all QD functions work ok
AFA Gary J GA, Matt
Matt DTS Fastport aware has some responsibilities that go with it, aside
from just speeding things up.
Matt DTS When you set the FP-aware bit, you're telling QD that you're not
going to go messing with items in
Matt DTS a grafPort without using QuickDraw calls. How do you know that
other routines in the Micol library
Matt DTS aren't doing that?
RMY Compiler author advises that the call I am using is a simple
call
RMY to DrawString
RMY This gets executed right after the QDStartup call
Dave Lyons QDStartUp on ROM 1 in System 5.0.2 and earlier does not correctly
clear the bank-$01 copy of the
Dave Lyons screen. You can do a ClearScreen(0) to work around it. Funny,
this never seems to have made it into
Dave Lyons GS Technical Note #72, QuickDraw Quirks. Oops. The problem will
likely go away in the future
Dave Lyons anyway, and it's not a problem on ROM 3 in the first place.
JeffreyH11 Maybe you can do that on the next version of system.
Dave Lyons (BTW, I'd be surprised if Micol was fiddling with the grafport
directly.)
RMY I tried a call to Clearscreen after QDStartup but before
DrawString but
RMY no help...
Matt DTS I would too, but it's better to find out directly. Are you sure
Micol's library (not your code, but
Matt DTS the library code Micol uses to start up the tools) isn't modifying
any grafPort fields directly?
Matt DTS (and if so, how do you know?)
RMY I have discussed the QDStartup with Steve, the compiler author. I
am a
RMY active beta tester...
Dave Lyons Matt, this doesn't sound like a fastPort problem. It sounds like
a shadowing problem--the bank 1
Dave Lyons screen hasn't been cleared to anything yet.
Dave Lyons Although, I don't know why the ClearScreen(0) wouldn't work, if
the problem is what I think it is.
RMY The problem specifically is a small artifact on the screen in
RMY front of the first letter of the message that i printed
RMY correction drew on the SHR screen...
Matt DTS How can it be a shadowing problem if he called ClearScreen? Maybe
QD didn't get the text mode set
Matt DTS correctly because of fastPort anomalies.
Dave Lyons RMY, I have a suggstion. Are you using Shadowing *and* FastPort?
Try them separately and see which
Dave Lyons one is causing problems.
RMY Will do. I believe the problem is with shadowing if I remember
correctly
RMY as I already tried that idea.
Dave Lyons Try passing something Weird to ClearScreen, just to make sure it's
working.
RMY Dave, that is a great idea!
RMY I will try that.
Matt DTS What did you pass to ClearScreen? It doesn't take a color number
like you might think.
Matt DTS (for example, ClearScreen($DDDD) clears it to the standard
dithered-blue pattern)
RMY I have tried passing only $0000
RMY This problem is in the MAB Codemaster Library demo which I
uploaded
RMY to the development lib a while back. I am now embarrased because
it
RMY looks like a MAB bug to whoever downloads it. I should not have
RMY patched the lib for the upload...
RMY Thanks for the suggestions. GA
AFA Gary J RMY, give Matt's suggestion a try and let us know what happens.
AFA Gary J Let's move on to Jeffrey's question.. GA Jeffrey
JeffreyH11 2 things...
JeffreyH11 1.) is it possible to tell, under P8, whether a given volume is
AppleShare or
JeffreyH11 local?
AFA Gary J GA Dave
Dave Lyons Yes. One way is to do a READ_BLOCK on it & see if you get error
$88 or not. (That's the recommended
Dave Lyons way these days, isn't it Matt?) ga
Matt DTS That's the recommended way to see if the boot volume is
AppleShare.
Matt DTS The recommended way to identify any volume involves an AppleShare
call that tells you a lot more.
AFA Gary J That only works for the boot volume?
Matt DTS It's only guaranteed for the boot volume. We prefer people use
other methods for identification.
Matt DTS It's all detailed in P8 TN #21, Identifying Stuff. GA.
JeffreyH11 I just want to know if it is AppleShare or not, without
neccessarily knowing
JeffreyH11 if there's an AppleShare card in the system.
AFA Gary J Next question, Jeffrey?
JeffreyH11 Second, (OK, there's more than 2)... I'm writing a routine that
intercepts
JeffreyH11 P8 MLI calls before they get to the MLI. Only problem is,
sometimes my
JeffreyH11 routine makes several MLI calls itself. I need to be able to do
all this
JeffreyH11 without fear of being called while already active, and without
fear of not
JeffreyH11 calling an interrupt routine that patches CMDADR. Only I don't
want any
JeffreyH11 interrupt routines to slip past my intercept, and I can't disable
interrupts
JeffreyH11 because it would kill AppleTalk. (wouldn't it?). Can you
help??
Dave Lyons Hmmmmm.
Dave Lyons I think it can work.
JeffreyH11 Thought you'd say that :) The real fun thing is I have to do it
within a week,
JeffreyH11 AND write the GS/OS version (which will be much easier).
Dave Lyons What you have to do is (1) be re-entrant, so you can deal with
interrupt-time calls
Dave Lyons to yourself without screwing up the call you were setting up. So
keep variables on the stack, or
Dave Lyons preserve their old values onto the stack before using them.
Patching CMDADR only happens when
Dave Lyons the caller notices that the MLIACTV flag is already set. Just
don't fiddle with it, and you're okay.
Dave Lyons Oh, and (2) call the Real P8 vector when you make your own calls,
instead of calling BF00.
JeffreyH11 where can I get more info on that? I have Gary Little's book
(which I keep
JeffreyH11 mentioning), which has a disassembly of page $BF, but the
subroutines there
JeffreyH11 aren't guaranteed.
Dave Lyons The GS/OS version of your utility?
JeffreyH11 GS/OS will be easy, because of the way the busy state is handled
by the OS and
JeffreyH11 by interrupt routines.
Dave Lyons I don't think you need more info than is documented--just patch
out BF00. By the "real"
Dave Lyons P8 vector I only meant the "old" contents of BF00-2.
JeffreyH11 Now, here comes the fun part... where can I safely put my code so
it won't
JeffreyH11 interfere with any system program. It has to work with ANYTHING,
and survive
JeffreyH11 between launches.
Dave Lyons Jeffrey, there's no such place. Have fun. :)
JeffreyH11 How much free space is there in $Dx bank 2? (in the current P8).
JeffreyH11 I know it will break future versions, but I will have to check the
version
JeffreyH11 # before installing anyway.
Dave Lyons Extremely little free space. I don't know exactly how much or
where, but I've been told there's only
Dave Lyons a couple dozen bytes free in P8, scattered around.
Dave Lyons Why will you have to check the version?
JeffreyH11 I was under the impression that there was some free space above
the Quit code.
Dave Lyons You should be able to patch out $BF00 after fetching the old JMP
from there, staying pretty
Dave Lyons compatible with everything.
Dave Lyons (Not that I know of.)
JeffreyH11 I am patching P8 so it will install my code at boot time.
JeffreyH11 Unless I can put it in ATINIT, which will screw up AppleTalk.
Dave Lyons Oh. Why don't you make it a .SYSTEM file that you put first, & it
searches for the *next* .SYSTEM
Dave Lyons file? Works well for P8CDA.SYSTEM and others.
JeffreyH11 Because it has to be installed when P8 is launched by GS/OS to run
a 8-bit
JeffreyH11 program. This is something that has to ALWAYS be active once you
boot with
JeffreyH11 it, until restart.
AFA Gary J Interesting problem.
JeffreyH11 When P8 searches a volume for a file, where does it store the
directory
JeffreyH11 blocks?
Dave Lyons Hmmm. Okay, you can also chain into OS_VECTOR at $E100BC (I think
that's the right address). That's
Dave Lyons what AppleTalk uses to keep itself chained into $BF00. Actually,
you want to be in there *before*
Dave Lyons AppleTalk, so that you'll get to chain into BF00 -after-
AppleTalk. Hmmm.
Dave Lyons JH, I believe it stores the directory blocks somewhere in $Dxxx.
Why?
JeffreyH11 Because I think I can use some of that space for loading blocks
from disk when
JeffreyH11 I need to. There's a couple places where I need to read a block
from disk to
JeffreyH11 do something.
Dave Lyons Ick. If you do -anything- like that, please check KVERSION and
*refuse to load* if it's a higher
Dave Lyons version of P8 than the utility knows about. It's still icky. I
don't know whether P8 has any
Dave Lyons "smarts" about those buffers (it might know what block is in
there, some of the time).
JeffreyH11 Don't worry; I will. And, I'll save what was in there first. The
other
JeffreyH11 possibility is to put all my code in an area outside banks 0 and
1, loaded when
JeffreyH11 the Init loads at GS/OS boot time. Where can I get docs on
OS_VECTOR?
Dave Lyons Good question...
Dave Lyons it was in some release notes once upon a time. I
Dave Lyons believe it's E1/00AC (not BC...sorry). It gets called on OS
switches. When you're done, jump to
Dave Lyons the value that used to be in there. (It holds an RTL initially &
a long JMP once somebody is
Dave Lyons patching it. So just copy the 4 bytes & fall into the old copy of
them.)
JeffreyH11 It gets called AFTER P8 loads, but BEFORE an application is
started?
Dave Lyons Yes, I believe it's just what you want. I know AppleTalk uses it
to grab $BF00, so it seems like
Dave Lyons it must be right.
JeffreyH11 OK. Then all I have to do is be reentrant.
Dave Lyons Sounds like it.
JeffreyH11 is an interrupt routine ALWAYS called in emulation mode?
Dave Lyons Nope. GS interrupt routines are always called in native mode,
8-bit registers, with stack in
Dave Lyons page 1. But yes, it's Native, not emulation.
JeffreyH11 So if my code is somewhere in bank 2 or up, and a P8 interrupt
routine is
JeffreyH11 called, the 65816, the firmware, and P8 will take care of the
interrupt code?
Dave Lyons I don't understand the question. As long as you're never trying
to execute in emulation mode outside
Dave Lyons bank 0, there should be no problem. (If you're ever outside bank
0 in emulation mode, you have to
Dave Lyons have interrupts disabled, or the system will die. An emulation
interrupt doesn't save K, so you
Dave Lyons get lost.)
JeffreyH11 OK. Final question - is it true that P8 can be called from within
its own
JeffreyH11 address space (main memory $D0 - $FF) without problems?
Dave Lyons It's certainly not guaranteed, but it's probably true.
JeffreyH11 OK. Great; thanks for the help. Now maybe I'll be able to do
this
JeffreyH11 successfully. Wish me luck!
Dave Lyons Luck!