Login  •  Register


The time is now: Sat May 27, 2017 5:29 pm

Emaculation wiki  •  Delete all board cookies



Post new topic  Reply to topic Page 1 of 13 [ 318 posts ]    Go to page 1, 2, 3, 4, 5 ... 13  Next
Print view Previous topic  |  Next topic
Author Message
PostPosted: Thu Feb 27, 2014 3:41 am 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Hi folks,

I've been working on an A/UX emulator for the past few years, and just released v0.0.1 on github:

https://github.com/pruten/shoebill

Shoebill is an all-new, BSD-licensed Macintosh II emulator designed from the ground up with the singular goal of running A/UX.

A/UX 1.x.x through 2.0.0 are supported currently, and 3.x.x support is in progress.

It's extremely buggy right now, very incomplete, and a little difficult to setup since you'll need to extract the A/UX kernel from your boot image (/unix).
Pro tip: (if you have an A/UX installation CD, you can boot directly from that.)

I'll work on getting up documentation in the near future. In the mean time, if anyone is so inclined and adventurous, you can try to get it running with a Macintosh II ROM, an A/UX installation CD image (v1 or v2), and the kernel from that CD.

Screencaps: https://github.com/pruten/Shoebill/wiki/Screenshots


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Thu Feb 27, 2014 4:49 am 
Offline
Site Admin
User avatar

Joined: Mon May 20, 2002 4:37 am
Posts: 3536
Location: Uiwang
That's fantastic! Running A/UX has been one of my emulation dreams for more than a decade!

Are you emulating the MMU which is, I guess, the reason that Basilisk II and vMac cannot run that OS?

Please, please keep up informed about the progress of your work!


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Thu Feb 27, 2014 6:35 am 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Yeah, Shoebill emulates the Mac II's MC68851 PMMU coprocessor and NCR5380 SCSI controller.
I just started implementing hardware and instructions as necessary to get A/UX further along
in the boot process, so I don't know exactly why other emulators can't boot A/UX.

Booting regular Mac OS is a future goal, after getting A/UX 3 working.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Thu Feb 27, 2014 6:10 pm 
Offline
Forum All-Star
User avatar

Joined: Fri Nov 27, 2009 5:11 am
Posts: 1601
Wow... if you're emulating the MMU... well, let's just say there are quite a number of emulators that could really use that code. If I can find the time, this might even get me interested in porting that code over to BII and MESS!

Please consider adding the MMU code to the MESS project as well; it would be good to have it documented there.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Thu Feb 27, 2014 9:19 pm 
Offline
Tinkerer
User avatar

Joined: Sat Feb 08, 2014 8:15 pm
Posts: 44
And if the MMU is emulated in Basilisk II, then it can be ported to SheepShaver. And if SheepShaver can emulate a MMU, it can run Mac OS 9.1 and later.

_________________
"Unix was not designed to stop you from doing stupid things, because that would also stop you from doing clever things."

Doug Gwyn


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Fri Feb 28, 2014 2:06 am 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
I'm trying to abstain from peeking at how other Mac emulators are implemented, so can't speak to exactly how difficult it would be. But decoupling the MMU from Shoebill would be a little tricky, since it's baked into the memory access primitives. The important chunk is this, for traversing page tables and doing the virtual address translation. The handful of PMMU instructions that A/UX actually uses are implemented in core/mc68851.c.

IIRC, there's an MMU patch for UAE floating around out there, so that'd be an easier way to add MMU support to Basilisk II.

As to MESS - doesn't it already have an MMU?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Fri Feb 28, 2014 7:23 am 
Offline
Forum All-Star
User avatar

Joined: Fri Nov 27, 2009 5:11 am
Posts: 1601
MESS has rudimentary MMU; but not an MMU that will run A/UX -- so you've obviously implemented a few things that aren't documented there. But if you're doing memory access shortcuts and not implementing the entire PMMU set, I'm not sure how useful merging will be. Definitely more work than I was originally thinking.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sat Mar 01, 2014 7:04 am 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Okay, it now has slightly better documentation

https://github.com/pruten/Shoebill/wiki/Getting-Started

Sorry I don't have better ideas for extracting the unix kernel from an A/UX install CD. I'm hesitant to post them online myself, even though Apple probably already did that back when they used to release A/UX minor version updates online. (If anyone has the A/UX 2.0.1 update, btw, I'd be very interested.)


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sat Mar 01, 2014 2:20 pm 
Offline
Forum All-Star

Joined: Wed Nov 11, 2009 5:47 pm
Posts: 963
Location: Germany
Thanks for your labour of love and for sharing your work!
Anybody who owned one or more MacII´s (like me) will be eager to hear about your proceedings, I presume.

Could you eventually provide Shoebill´s ready made executables and GUI too?
I can´t seem to get things rolling easily with 10.8.5 and would rather not become too familiar with Terminal. :)


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sat Mar 01, 2014 10:23 pm 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Hey 24bit,

The releases page has a precompiled app. The emulator core is statically compiled into the GUI, so there are no other components you need to download.

Although, it is compiled against the 10.9 SDK... I'll look into switching to the 10.8 SDK, although I don't have a machine to test it on.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sat Mar 01, 2014 11:00 pm 
Offline
Forum All-Star
User avatar

Joined: Fri Nov 27, 2009 5:11 am
Posts: 1601
Any chance you could compile it against the 10.6 SDK? Supposedly 1 in 5 Mac users still uses 10.6, and a large number of them appear to frequent these forums :) Testing against 10.9 would probably still be fine, but at least it would be more likely to work under 10.6. Testing via VM would be fairly easy in VirtualBox if you can get your hands on a 10.6 DVD.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Mar 02, 2014 3:51 am 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Xcode 5 on Mavericks doesn't seem to support SDKs below 10.8, so I'm not sure how to build for 10.6 conveniently...


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Mar 02, 2014 4:33 am 
Offline
Space Cadet

Joined: Sun Mar 02, 2014 4:29 am
Posts: 1
1. Are you just booting from the install image, or are you booting then installing the system to a blank image?

2. What are you doing to create disk images? I have tried to create many different types of blank disk images, but for some reason A/UX isn't mounting them.

3. Great job on this!


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Mar 02, 2014 9:43 am 
Offline
Forum All-Star

Joined: Wed Nov 11, 2009 5:47 pm
Posts: 963
Location: Germany
Thanks for caring pruten!
Seems I was too blind to see.

So I got the files, methinks:
A/UX 2.0 CD Image.toast
MacII.ROM
Shoebill.app
kernel: unix (From Protocol_7 Macintoshgarden)

Shoebill refuses to run on my 10.8.5 Hackintosh though. The app jumps in the dock but does nothing except for that.
Am I missing something obvious?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Mon Mar 03, 2014 4:05 am 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
24bit,

I hacked together a universal build for 10.8, v0.0.1a. You can get it on the release page. I'll try to make future releases 10.8/universal compatible. Unfortunately, I don't have a convenient way to make 10.7 or earlier builds.

huntgr,

I'm generally booting from the install CDs directly. The disk images are presented to A/UX as real SCSI disks, so they do need partition maps. A/UX won't recognize a raw HFS volume on a disk image unless it's encapsulated in a partition. It seems that System 6 under A/UX 2.0.0 isn't capable of recognizing and formatting an unpartitioned disk, so I've been using System 7 under Basillisk II to partition my disk images.

I think there are CLI partitioning tools in A/UX 2.0.0, but I'm not sure what they are or how to use them.

Also, thanks :)


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Mon Mar 03, 2014 4:50 pm 
Offline
Tinkerer

Joined: Mon Feb 23, 2009 11:46 pm
Posts: 53
You can install Xcode 3.2 on 10.9 (using some tricks), which allows you to build for 10.4-10.6. There are several guides for how to do this floating around, I think I used this one: http://lapcatsoftware.com/articles/xcod ... nlion.html . I recommend installing it in a custom prefix like /Xcode3 , so that it can't possibly interfere with your existing modern Xcode.

Another option is running 10.6 in a virtual machine, which is what I usually do.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Mar 04, 2014 6:21 pm 
Offline
Mac Mechanic
User avatar

Joined: Fri Aug 27, 2010 1:02 am
Posts: 186
You can also download the 1.4, 1.5, 1.6 or 1.7 SDK somewhere on the internet (search engine) and put it in your SDKs directory.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Mar 04, 2014 8:15 pm 
Offline
Space Cadet

Joined: Tue Mar 04, 2014 8:04 pm
Posts: 2
24bit wrote:
Thanks for caring pruten!
Seems I was too blind to see.

So I got the files, methinks:
A/UX 2.0 CD Image.toast
MacII.ROM
Shoebill.app
kernel: unix (From Protocol_7 Macintoshgarden)

Shoebill refuses to run on my 10.8.5 Hackintosh though. The app jumps in the dock but does nothing except for that.
Am I missing something obvious?

Am I missing something obvious?[/quote]

When I use Protocol 7's kernel I end up with a black screen. When I use xunix extracted from the kernel archive img (cpio) in AUX_2.0_Install.sit_.hqx I can boot to the command line.

Is there any way to start an install (with System 6) to a new disk image ?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Mar 04, 2014 9:54 pm 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Hey vdb,

What ROM are you using? IIci-and-newer ROMs paint the screen black (I think) because they have internal video chips that shoebill doesn't implement and that A/UX prefers to use. A/UX 2.0.0 and earlier don't support multiple monitors, so the second monitor is painted black. Shoebill should work with II/IIx/IIcx ROMs, (all of which are 256KB.)

It's interesting that the xunix will use the secondary screen, though.

There's currently no way to properly install A/UX. The only way for now is to create a new disk image, partition it (swap + svfs/ufs), and copy the contents of the CD to the new disk. Penelope used to have a procedure for doing this with A/UX 1.1.1 that should apply to 2.0.0 as well - but I've just been booting directly off the install CD.

If you do install A/UX onto another disk image, be sure to back it up! UFS/SVFS get corrupted really easily.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Mar 04, 2014 10:08 pm 
Offline
Space Cadet

Joined: Tue Mar 04, 2014 8:04 pm
Posts: 2
With the Iici rom and xunix I only got a shell prompt.
with a Iicx rom and unix I now get a proper gui login screen.

Thanks for this great emulator. A/UX was my first 'real' Unix experience.
vdb


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Mar 04, 2014 10:18 pm 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Thanks! :)


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Fri Mar 07, 2014 2:52 pm 
Offline
Student Driver
User avatar

Joined: Fri Jul 24, 2009 2:44 pm
Posts: 21
Thanks for working on this pruten! Never thought I'd see the day I could run a emulated A/UX. And this is on top of UAE being able to run AMIX.

There's a A/UX 0.7 archive on macintoshgarden that I've long been curious about. It's a tar archive of an installation so presumably it would have to be unpacked onto a disk image to boot. Have you any idea how I could go about doing this? Or would Shoebill be able to run it?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Fri Mar 07, 2014 6:00 pm 
Offline
Tinkerer

Joined: Thu Feb 27, 2014 3:10 am
Posts: 66
Shoebill 0.0.1 *currently* can't run it, because it expects there to be a Macintosh II video card (toby frame buffer) attached. I have a partly-emulated toby frame buffer card (core/toby_frame_buffer.c), but you can't currently access it via the GUI. I'll see what I can do for the next release :)

Btw, making progress getting A/UX 3.x.x to boot. Here's X11 kinda-sorta working http://i.imgur.com/EeiGQaa.png


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Mar 09, 2014 1:19 pm 
Offline
Student Driver
User avatar

Joined: Fri Jul 24, 2009 2:44 pm
Posts: 21
Nice! Looking forward to the next releases.

I have most of the A/UX 2.0.1 update but disk 3 is missing. Surely somebody must have a complete copy out there.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Mar 26, 2014 1:05 pm 
Offline
Student Driver

Joined: Mon Jan 06, 2014 11:16 am
Posts: 22
Location: Bangladesh
Here you can find A/UX 2 and 3 update and others' -http://wdl2.winworldpc.com/Abandonware%20Operating%20Systems/Macintosh/
You can see Previous (A NeXT hardware emulator) -http://previous.alternative-system.com
Can you port Shoebill on windows and on Linux? You can use cmake a cross platform builder.

Mominul


Top
 Profile  
Reply with quote Post a reply  
Display posts from previous:  Sort by  
Post new topic  Reply to topic Page 1 of 13 [ 318 posts ]    Go to page 1, 2, 3, 4, 5 ... 13  Next


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
 

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group