> 1) BTW, do you have a solution for direct addressing ?
REAL_ADDRESSING builds just seemed to crash for me :-)
When I started investigating, I got lost in the mmap() stuff
(manpages for some functions in OS X public beta are missing),
so I decided that I would get everything else working first.
> e.g. does MacOS X
> supports POSIX Extended Signal Handlers, the ones that can take a
> siginfo_t structure informing you about the address of an illegal
> instruction for example ?
Doesn't look like it has them.
> 2) Is there and will it be possible to use Apple's DR Emulator located
> in ROM ?
* Only 30% of the machines that currently run MacOS X (i.e. >= G3)
actually have the DR 68k Emulator in ROM. The others get it from
the NewWorld ROM file on the System disk.
* I think we would need to be emulating a PowerMac before that code
could be used. (I have seen the problems in calling Mac ROM code
from Unix [MRG in NetBSD/Mac68k], and it isn't pretty)
> >2) Has a cyan cast.
> I think I had the same problem once:
Emulating a Mac in a PC emulator. How sick ;-)
> The color distortion looks quite similar.
You at least had some red. I have none!
The problem is caused by differing representations of 32bit
data in Basilisk & MacOS X's windowing (Quartz):
Basilisk _RGB ARGB
Quartz RGB_ RGBA
My current hack for this is to give Basilisk a bitmap pointer
that is offset by 1, so that it draws into the correct channels.
Incredibly, it works (I thought I would have word alignment problems).
The correct fix for this would be to have another intermediate
memory buffer, and either rotate each 32bit word before copying, or
copy with my 1byte offset, but the emulator is slow enough already!
Another problem is that the bitmap drawing classes do not
currently support 16bit bitmaps. They support 1, 2, 4 and 8 bits per
sample, but not 5 (for 555). The classes do adjust between source
and screen depth however, so for now I am just using 32bit, and
letting it be dithered or truncated.
| Nigel Pearson, nigel@... | "Reality is that which, |
| Telstra NW-D, Sydney, Australia. | when you stop believing |
| Office: 9206 3468 Fax: 9212 6329 | in it, doesn't go away." |
| Mobile: 0408 664435 Home: 9792 6998 | Philip K. Dick - 'Valis.' |