[Coco] [Color Computer] OS-9 Question, GCC stuff

Benoit Bleau benbleau at gmail.com
Fri Jul 22 17:18:28 EDT 2005


 
James,
In the OS9 level II development system, chapter 8 of RMA says:

...
When OS-9 executes a process, the MPU Registers contain the bounds of the
data area. Register U contains the beginning address and Register Y contains
the ending. OS-9 sets the SP register to the ending address + 1, unless you
use a parameter.  The direct page register contains the page number of the
beginning page. If you used no parameters, Y, X, and SP are the same value.
The OS-9 shell always passes at least an end-of-line character in the
parameter area.

If Register U is maintained throughout the program, you can use
constant-offset-indexed addressing.

You can write part of the program's initialization routing to compute the
actual addresses of the data structure and stire these addresses in pointer
locations in the direct page. Then obtain the addresses later using
direct-page addressing mode instructions.
...

I would say that this means that yes, you can use DP :)

-Ben


-----Original Message-----
From: coco-bounces at maltedmedia.com [mailto:coco-bounces at maltedmedia.com] On
Behalf Of James Diffendaffer
Sent: Friday, July 22, 2005 4:36 PM
To: ColorComputer at yahoogroups.com
Subject: [Coco] [Color Computer] OS-9 Question, GCC stuff

What limitations does OS-9 place on the use of page 0 and DP usage by
programs?  I'm guessing Page 0 is reserved for the OS but the DP would be ok
to use for a user program... but I don't have any OS-9 docs so I wan't to
make sure.  

GCC 68HC11 places it's software registers on page 0 for fast access. 
I figured I could place the soft registers in the GCC startup code or at the
start of the data segment and point the DP there to access them.  Without
that GCC's code will be significantly slower.

I've gone throught the instruction sets of the 09 and HC11.  The differences
are managable so far.  The remaining issue is whether or not the compiler
uses address modes that the 09 doesn't support for the same instructions. 

To resolve the problems I was having with Cygwin I had to delete my entire
install and install from a different mirror.  Once I did that the GCC
configuration and make seemed to work great.  Something was wrong with a
file on the mirror I had been using and it was causing problems with my
install.  

The make took a while (I walked away after 20 minutes) to make the entire
GCC project on my 2.4GHz system the first time so anyone planning to build
everything should expect to start it and check back later.






Brought to you by the 6809, the 6803 and their cousins! 
Yahoo! Groups Links



 



--
Coco mailing list
Coco at maltedmedia.com
http://five.pairlist.net/mailman/listinfo/coco



Brought to you by the 6809, the 6803 and their cousins! 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/ColorComputer/

<*> To unsubscribe from this group, send an email to:
    ColorComputer-unsubscribe at yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 





More information about the Coco mailing list