Subject: Re:Q605
To: Bob Nestor <rnestor@metronet.com>
From: None <omar@webnetmktg.com>
List: port-mac68k
Date: 09/01/1996 10:13:45
>>Logging to bootlog
>>Booting...MID_M68K executable: entry 0x3356.
>> + 48244
>>
>>Set _boothowto to 0x2.
>> Bye-bye...
>> So I sez to him... The real way
>> that it should be done is to...
>>Ser Console = 0
>>
>>Set _mac68k_vrsrc_cnt to 0x0.
>>
>>Set _mac68k_vrsrc_vec to {0x0 0x0 0x0 0x0 0x0 0x0 }.
>
>Hi,
>
>Hope you haven't given up hope on getting MacBSD up and running on your
>Q605 yet. I've been digging around trying to find some reason and/or
>pattern. Seems the LC575 and the Q605 act the same way on boot and we
>might have made an "Ah-Ha" breakthrough. We discovered the LC575 uses a
>new Class of hardware map for I/O that we hadn't seen before. I'm in the
>process of putting together a Kernel that may boot on that system, and
>I'd like to verify that's the same thing that's happening on the Q605.
>To do that I've added some code to the ROM Sniffer to try to map out the
>Hardware I/O map. If you'd like to try running it again on your system
>and send me the results, I'd sure appreciate it. The program is at:
>
><ftp://members.aol.com/bobnestor/NetBSD_ROM.sit.hqx>
>
>Thanks,
>-bob
Here you go bob. I kind of almost given up hope but not completley, here
are the results.
The Mac ROM values needed by NetBSD/mac68k for this Mac are:
/*
* Vectors sniffed out for MacQuadra605, a MACH_CLASS?? machine
* Zero values are not required by NetBSD for this system, but values shown as
* "Not_Found" must be provided before NetBSD can hope to run. The values
* shown in parenthesis in the comment field are thought to be machine
* independent and valid for this system based on the ROM Version ID.
*/
{ /* ?? */
"MacQuadra605 ROMs", /* Gestalt Id: 94 */
(caddr_t) 0x408a9b56, /* ADB interrupt */
(caddr_t) 0x0, /* PM ADB interrupt */
(caddr_t) 0x408b2f94, /* ADBBase + 130 interupt */
(caddr_t) 0x4080a360, /* (0x4080a360) CountADBs */
(caddr_t) 0x4080a37a, /* (0x4080a37a) GetIndADB */
(caddr_t) 0x4080a3a6, /* (0x4080a3a6) GetADBInfo */
(caddr_t) 0x4080a3ac, /* (0x4080a3ac) SetADBInfo */
(caddr_t) 0x4080a752, /* (0x4080a752) ADBReInit */
(caddr_t) 0x4080a3dc, /* (0x4080a3dc) ADBOp */
(caddr_t) 0x0, /* PMgrOp */
(caddr_t) 0x4080c05c, /* (0x4080c05c) WriteParam */
(caddr_t) 0x4080c086, /* (0x4080c086) SetDateTime */
(caddr_t) 0x4080c5cc, /* (0x4080c5cc) InitUtil */
(caddr_t) 0x4080b186, /* (0x4080b186) ReadXPRam */
(caddr_t) 0x4080b190, /* (0x4080b190) WriteXPRam */
(caddr_t) 0x408b3bf8, /* jClkNoMem */
(caddr_t) 0x4080a818, /* (0x40801818) ADBAlternateInit */
(caddr_t) 0x408a99c0, /* (0x40814800) Egret */
(caddr_t) 0x408147c4, /* InitEgret */
(caddr_t) 0x408a82c0, /* ADBReInit_JTBL */
(caddr_t) 0x4087eb90, /* (0x4087eb90) ROMResourceMap List Head */
(caddr_t) 0x4081c406, /* (0x4081c406) FixDiv */
(caddr_t) 0x4081c312, /* (0x4081c312) FixMul */
},
/*
* This machine is of an unknown Class and should be defined as follows.
* The following information is needed to properly classify this system
* for processing I/O. This goes into the "setmachdep()" routine
* located in the "machdep.c" source file.
*/
case MACH_CLASS##
VIA2 = 0x1;
IOBase = 0x50f00000;
Via1Base = (volatile u_char *) IOBase;
mac68k_machine.scsi96 = 1;
mac68k_machine.sccClkConst = 115200;
via_reg(VIA1, vIER) = 0x7f; /* disable VIA1 int */
via_reg(VIA2, rIER) = 0x7f; /* disable RBV int */
break;
/*
* The following information is needed to setup the I/O Base addresses
* pointing to the appropiate memory mapped hardware on this system.
* This information goes into the "mac68k_set_io_offsets(base)" routine
* located in the "machdep.c" source file.
*/
case MACH_CLASS##
Via1Base = volatile u_char *) base;
sccA = (volatile u_char *) base + 0xc020;
ASCBase = (volatile u_char *) base + 0x14000;
SCSIBase = base;
break;
This machine is a 68k machine using a 68RC040/68LC040 CPU, FPU: optional
68881 installed MMU: integrated in 68040
Gestalt Manager reports hardware attributes (0x01a0081b) of:
VIA1 exists
VIA2 esists
ASC - Apple Sound Chip
SCC exists
Internal IDE disk, not currently supported by NetBSD/mac68k
Universal ROM
Basic hardware required for NetBSD/mac68k is present, but the following
things might be problems that need to be considered:
Internal disk is an IDE, not currently supported
If you are not currently able to build a Kernel with this information and
need one built that you can test, please send the information to me,
Bob Nestor at rnestor@metronet.com
I'll build a Kernel, put it on an FTP Site and let you know where. If it
runs on your system, I'll forward the information to the Maintainers.