On Nov 17, 2007, at 3:28 PM, nubus-pmac-users-
[EMAIL PROTECTED] wrote:
This looks interesting. Thanks for all the pointers!
I enabled the Wiki functionality on the SF site [1] and collected most
of the posted links. It's still read-only for non-members...
I also added an article for building a cross toolchain (gcc-4.1.1 /
binutils-2.17) solely using Debian tools. It has been successfully
done
that way on a x86 here.
Cheers,
Florian
Thanx again. Good work on the Wiki... I'll be trying to build a
kernel the 'Debian way' soon. I am almost to the point of trying out
a few changes.. I'll probably be at the point of building some 1400-
specific kernels (which probably won't work)next week if I have
time... I just need to figure out which files need to be revised.
I'll be working off the 2.4 tree, but with a bunch of changes. I
fear that some things need to be written from scratch, but I have a
general idea of what needs to be done. My MacOS debugging tools
are... er... buggy, so I have been hindered by that while trying to
verify hardware addresses.
Here are some assumptions that I am going to work on: The powerbook
has only a VIA1 register (which I assume works just like a real
6522... hopefully without the shift register problems), and although
RBV (ram based video that also handles emulated VIA2 duties) shows up
in the gestalts and not a VIA2 or OSS, it does not use RBV for the
display (as we know, the framebuffer has it's own 1M of RAM), so I
ASSUME that RBV is acting like the VIA2 register like a Quadra/
Centris (which puts it in the pain-in-the-butt interrupts category),
and I am going to try that assumption out... thgis is unlike the x100
series, which i THINK has a pair of 6522 for VIA1/VIA2. The other
assumption that I am working on is that although the hardware has no
DMA, you need to ACT like it does and just plug in the addresses for
the sake of the kernel and do somethng tricky... I am not sure about
this, but we'll see.
For anyone's reference, i THINK that I have a bunch of the hardware
addresses, but I am not positive... I just figured them out with a
calculator under the assumption that Apple stuck with the old scheme
and stepping, so they could be TOTALLY wrong, but i will list them in
case anyone else wants to check them out by either checking the
addresses in a debugger or checking for the driver pointers in a
disassembler or whatever. I marked the addresses that have a pointer
in low-mem with an * , so there is at least SOMETHING there... but
the others I have not verified yet. I just ran with the assumption
that Apple had not moved all the addresses from the older Mac models,
and actually found them to be the same, so I will be digging up some
more old info and chacking it against my machine. I am ALSO hoping
that these are active addresses, and not dead ends that were left
over from older versions of the ROM (not likely).
device = address = low memory pointer
(*) means that I confirmed it by dissassembling the code at that
pointer address
*I/O base(should be the VIA1) = 0x50F00000 = $1D4
I/O size = 0x42000
*SCSI handshake = 0x50F06000 = $0C08
*IWM base = 0x50F16000 =
$1E0
*??SCSI chip read base?? = 0x50F10000 = $0C00
*ROM base = 0x40000000 =
$2AE
*RAM base = 0x00002800 =
$2B2
*Power manager vars base = 0x000A2290 = $0D18
*Sound bitmap base = 0x50F14000 = $266
*SCC read base = 50F04000 50F04000 50F16000
DFC3261F = $1D8
*SCC write base = 50F04000 50F04000 DFC3261F
4E75CC0A = $1DC
(If the VIA2 is RBV, then it should be hanging out at 50f26000, but I
found a pointer to a VIA2 at 50F02000 (pointer at $000000CEC))
*vector to slot VBL task interrupt handler = 001CC0E4 00389480
FFFF0000 341CFFFF = $0D28
Some other useful things that I spotted:
*Pointer to time = $20C
*Pointer to Tick count = $16A
*Pointer to VBL queue header = $160
These are unverified... just wildly guessing here:
IDE 0 = 0x50F1A000
Interrupt control register = 0x50F2A000
VIA1 Interrupt Flag Register = 0x50F01A00
VIA1 Interrupt Enable Register = 0x50F01C00
VIA1 Peripheral Control Register = 0x50F01800
VIA1 Auxiliary Control Register = 0x50F01600
VIA1 T1 Low Order Counter = 0x50F00800
VIA1 T1 High Order Counter = 0x50F00A00
VIA1 T1 Low Order latches = 0x50F00C00
VIA1 T1 High Order Latches = 0x50F00E00
VIA2 Interrupt Flag Register = 0x50F03A00
VIA2 Interrupt Enable Register = 0x50F03C00
VIA2 Slot Interrupt Flag Register = 0x50F03E00
DMA Interrupt Flag Register = 0x50F2A008
DMA audio = 0x50F2A00A
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Nubus-pmac-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/nubus-pmac-users