From: Daniel G. <da...@gi...> - 2006-03-11 18:54:49
|
On Sat, 11 Mar 2006 09:32:54 +0100, Tobias Netzel wrote: > I tried with Daniel's C code and also used a demo of PortAsm68K > (http://www.microapl.co.uk) to port the 68k assembler code to PPC > assembler. That website says: "PortAsm can be used to translate system software (such as operating systems and drivers), but it does not automatically handle certain hardware-specific features and special operations like memory management. In practice, this means that the translation requires slightly more manual intervention than is normal for application porting." It also says: "Reproduces only the required behaviour of the 680x0 code, eliminating irrelevant side-effects as much as possible." I had no intention of that C code being compiled and used as-is. I/O code on the PowerPC must use special instructions such as "eieio" that neither gcc nor PortAsm will generate. I thought the code I supplied might be compiled to PowerPC assembly and then hand-modified before it could possibly work. I would be curious as to how the code gcc generates from my translation differs from what PortAsm generates, but neither will be able to work without further effort. In particular, I have no idea how gcc handles the casting to void of expressions that neither call functions nor modify values. > As I have already mentioned the PB 1400 in fact uses a standard PC > floppy controller, and the SWIM II might only be emulated. [snip] > Unfortunately I didn't find the I/O space of the floppy controller - > maybe it is directly connected to the SWIM II controller and therefor > not accessible for the CPU. The developer note seems to suggest that the Whitney chip handles the SWIM II interface in this manner. Therefore, it shouldn't really matter whether you're trying this on a 5300 or a 1400. |