Further PERQ Emulator progress (and a download!)

Dave McGuire mcguire at neurotica.com
Fri Jul 4 00:32:42 CDT 2008

On Jul 3, 2008, at 6:19 PM, Jim Battle wrote:
>>>   It's beyond my expertise, but my assumption about emulators was  
>>> always that the guts don't really change across (modern)  
>>> platforms - it's mainly the graphics layer that will be tightly  
>>> coupled to the OS.
>>   The PCB layout software that I use (called, oddly enough, "PCB")  
>> runs on UNIX platforms with X11.  Some time ago, DJ Delorie (of  
>> DJGPP fame, also has a project featured on the front cover of this  
>> month's Circuit Cellar Ink) did a huge amount of work to decouple  
>> the innards of PCB from the GUI.  He calls the result "HID" (Human  
>> Interface Device) and it has been used to create instances of PCB  
>> with a Motif GUI, a GTK+ GUI, and someone (Der Mouse, is he here?)  
>> is even working on a raw X11 GUI.
>>   That sort of abstraction is nontrivial to achieve, but it is  
>> possible.
> Have a look at Qt.  Have a look at wxWidgets (which is what I use).  
> There is no need to write separate interfaces; in my experience,  
> 98% of the code is the same across windows and osx (I haven't  
> attempted to get a linux port running)

   Qt was discussed at great length and eventually dismissed, but I  
don't recall exactly why.  The main point of PCB's HID system wasn't  
cross-platform portability, though, but GUI portability.  Some people  
wanted Motif, some people wanted GTK+, MacOS X runs either one  
beautifully, and we don't give a crap about Windows...

> I do agree that reengineering the model/view abstraction after the  
> fact is a lot of work, but that error is easily avoided.

   PCB has been around for a very long time...I believe it originally  
got its start in Atari ST land eighteen years ago, and ported to X11  
fourteen years ago.  The need for that type of abstraction really  
couldn't have been anticipated from the start. ;)


Dave McGuire
Port Charlotte, FL

More information about the cctalk mailing list