Page 6 of 13

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Mon Jun 23, 2014 4:24 am
by pruten
adespoton wrote:Once you get it running every version of A/UX, do you have any further goals, such as accurate sound/network emulation, Mac OS support for every OS version the Mac II supported, Rudimentary MIDI support, etc?

I know sound and MIDI would be hard, as it depends on timings which would likely slow emulation down too much. But thought I'd ask :)
Those are my next two goals, sound and ethernet. Sound is hard because Mac II uses the custom "Apple Sound Chip" which is completely undocumented. Ethernet is hard too - I'll probably start both simultaneously and see which is easiest to complete.

But for the moment, I'm trying to get A/UX 3.0.1 booting. I've tracked down at least one bug to this highly complex series of events:

The SCSI driver sends a READ(6) request for 0 sectors, because it actually wants to request 256 (0x100) bytes, but the sector-length field in the SCSI command is 1 byte, so it gets truncated to 0x00. It dispatches a request that big because breada() queues up 16 16-sector readahead requests, and I don't know why yet... One possible problem is that the emulated SCSI disk responds to commands instantaneously, the very moment it DMAs the final byte of the SCSI command, which probably never occurs in the real world.

This explains why heavy disk traffic causes freezes - if the buffer cache queues up a huge 256-sector read request, 0 bytes will be returned, and A/UX will wait forever for the rest of the data. Trying to reverse-engineer the logic now, since it's apparently unlike any other published system-v source :/

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Mon Jun 23, 2014 7:06 am
by Cat_7
Hi,

Great prospects!
Although you said earlier you didn't want to look at other emulator code, dsumorok added basic Apple Sound Chip support to his branch for Basilisk for OSX:
https://github.com/dsumorok/macemu/tree ... src/MacOSX

He also added networking support for tapping into a tap device and bridge it with OSX ethernet devices ( http://tuntaposx.sourceforge.net/ ). , which enable easy setup of networking and Appletalk support for his version of BasiliskII.

Best,
Cat_7

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Tue Jun 24, 2014 2:38 am
by pruten
Image

Shazzam! :) A/UX 3.0.1 boots now! Turns out that READ(6) and WRITE(6) interpret len=0 as 256 sectors. This is a very dumb bug - probably should have actually read the SCSI CDB spec. XD
Cat_7 wrote:Although you said earlier you didn't want to look at other emulator code, dsumorok added basic Apple Sound Chip support to his branch for Basilisk for OSX
I think MAME has an even better implementation, and I may have to relent and peek at MAME code. I cannot find a single shred of documentation *anywhere* on the apple sound chip, and I can't fathom where MAME got its information. Maybe with help from an Apple engineer? I'll start taking a stab at ethernet soon too. Planning to emulate the original Apple "EtherTalk" nubus card, since every version of A/UX already has a driver for it, and Apple released its ROM source as example code. Lots of later 3rd party cards are "register compatible" with it, but it'd be simpler to just emulate the EtherTalk card itself.

(BTW, if anyone has an actual Apple EtherTalk nubus card they'd like to donate, I'd really appreciate it :) )

Update: 3.1.0 runs too

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Tue Jun 24, 2014 2:49 pm
by neozeed
pruten wrote:
Turns out that READ(6) and WRITE(6) interpret len=0 as 256 sectors. This is a very dumb bug - probably should have actually read the SCSI CDB spec. XD
Wow, that is crazy!

I updated the windows exe...

It sure works better now the disk isn't being silently corrupted... a 'feature' of 3.0.1 and 3.1 .. :)

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sat Jun 28, 2014 9:45 pm
by zoriojh
Hello,
I'm moved by the prospect of running A/UX again, but before taking the plunge (finding all the necessary bits, and one computer to run shoebill -mine runs under OSX 10.7) I have an anxious question : can somebody tell me if Commando works ?
Commando is (was) a Mac GUI for Unix commands (grep, find...) that was built in A/UX.
You could either double click a Unix command in the Finder (to try, navigate to /bin or /usr/bin and double-click on grep) or enter a Unix command name in the shell (without hitting enter key) and use Cmd-K (if I remember correctly).

The magic of Commando is that it offered a GUI covering the many options of Unix commands, and showed you the resulting command-line built according to your choices.
I learnt Unix commands with Commando (which existed also in the MPW environment for system 6/7)

Thanks a lot to pruten and to anyone who can answer my question.

jh

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sun Jun 29, 2014 6:24 am
by neozeed
Sure...

Image

Although I never was much of a cmdo guy.

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Mon Jun 30, 2014 11:19 pm
by pruten
Commando works AFAIK, but I've never used it much either.

Also, Shoebill v0.0.4 is now "officially" available!

Major changes:
  • Boots A/UX 3.0.1 and 3.1.0, although they both seem flakier than 3.0.0
  • Now with basic support for Windows/Linux via SDL2
  • Supports 16 and 24-bit color ("thousands" and "millions")
Should also run more stably under heavy I/O load with that fixed SCSI thing.

The windows and linux binaries run on my ubuntu/win7 VMs, but I haven't tried them anywhere else. So lemme know if they don't run on Gentoo or Windows 8 or wherever.

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Tue Jul 01, 2014 6:00 am
by neozeed
both x86/x86_64 run on my Windows 7 x64 machine. However my 'torture' test of SoftPC is insanely slow with the x64 build, and double insanely slow on x86.. Maybe timers are too accurate? :P

I see it taking up about 1/3rd of the CPU for what it's worth, so it's idling, but maybe too much or too long...?

But your cross environment works!

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Tue Jul 01, 2014 5:42 pm
by pruten
neozeed wrote:both x86/x86_64 run on my Windows 7 x64 machine. However my 'torture' test of SoftPC is insanely slow with the x64 build, and double insanely slow on x86.. Maybe timers are too accurate? :P

I see it taking up about 1/3rd of the CPU for what it's worth, so it's idling, but maybe too much or too long...?

But your cross environment works!
Whoops, I saw that happening on the Cocoa build, but thought it was a one-off bug. It might be something in the video driver...

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sun Jul 13, 2014 11:23 am
by Mominul
Ok, Adding a little information about Shoebill on my Com-Emu Website - http://com-emu.meximas.com/doku.php?id=shoebill
Please feedback!

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sun Jul 13, 2014 4:32 pm
by uyjulian
Russian free hosting?

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Mon Jul 14, 2014 3:05 pm
by Mominul
You can use hostinger. Because I am from Bangladesh but I can use it!

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Wed Jul 30, 2014 3:42 am
by neozeed
I don't know why, but I tried to run Space Quest IV...

Code: Select all

D:\shoebill\master4\test>..\shoebill.exe disk0=Shoebill-Aux-3.0.0.dmg disk1=..\.
.\master3\hfs.dmg
Shoebill v0.0.4 - http://github.com/pruten/shoebill - Peter Rutenbar (c) 2014

Assertion failed: !"inst_movep: fixme: I'm not implemented!\n", file cpu.post.c,
 line 2325

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
Which lead to 3.0.0 corrupting itself in a way that it wont' boot anymore.. thankfully it's emulation otherwise yeah re-install.

The latest SCSI fixes let you runt the Apple HD SC setup program without it bombing out the SCSI bus, so at lest that is nice.

Building on Windows I ran back into the seekto vs seek stuff, and some sys_errlist being undefined, so I just changed it to "" to make gcc happy. And linking I had to add -lpthread into the library list.

The PRAM is working on windows, so it's nice not to have to constantly re-set the mouse click speed.

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sun Aug 03, 2014 1:41 pm
by zoriojh
Hello everyone,

the prospects of meeting Commando again are fading, it seems.

First, I've tried to run shoebill under Linux (this Linux running in a VirtualBox VM, the host being Mac OS X 7 (Lion) with no success.
I had to install SDL, and after that, nothing.

I mean, I tried to boot with A/UX installation images, and when the programs didn't exit immediately with some error message (telling me I had made a mistake somewhere), it just produced nothing.
I've check the ROM file(s) (I tried several), and shoebill complained when it was not correct.
I've checked the image files (I had messages that it couldn't find root partition, that "The root A/UX disk needs to be at scsi ID 0", and several others that I haven't written down).

In the end, after some trial and error, it *seemed* I should be OK (no complain from shoebill), but nothing happened.
The program used about 6% CPU, but nothing appeared on screen. No message, no window.

After that, I've tried to recompile shoebill (both with command line and with Xcode) under Lion.
No success. At the command line, the archive manager complains that it cannot determine the architecture (both i386 and x68-64 objects had been compiled).

Under Xcode, several files (nib files, if I remember correctly) were incompatible.

Well, my last try was to install Mavericks in a Virtualbox VM in order to use shoebill precompiled binary.
Here too, no success : I cannot manage to install 10.9 under Virtualbox (the host being 10.7, of course). All that on a Core i5 Mac Mini.

If someone has a working binary for 10.7 Lion, or another idea...

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Fri Aug 08, 2014 1:55 am
by pruten
Hey guys - sorry I've been neglecting this thread, been super busy lately.
zoriojh wrote:Hello everyone,
the prospects of meeting Commando again are fading, it seems.

First, I've tried to run shoebill under Linux (this Linux running in a VirtualBox VM, the host being Mac OS X 7 (Lion) with no success.
I had to install SDL, and after that, nothing.

I mean, I tried to boot with A/UX installation images, and when the programs didn't exit immediately with some error message (telling me I had made a mistake somewhere), it just produced nothing.
I've check the ROM file(s) (I tried several), and shoebill complained when it was not correct.
I've checked the image files (I had messages that it couldn't find root partition, that "The root A/UX disk needs to be at scsi ID 0", and several others that I haven't written down).
Can you post the names of the A/UX images you've been trying, and the command you've been running? Off the top of my head, I don't think shoebill can just exit without printing some kind of error message.
neozeed wrote:I don't know why, but I tried to run Space Quest IV...

Code: Select all

D:\shoebill\master4\test>..\shoebill.exe disk0=Shoebill-Aux-3.0.0.dmg disk1=..\.
.\master3\hfs.dmg
Shoebill v0.0.4 - http://github.com/pruten/shoebill - Peter Rutenbar (c) 2014

Assertion failed: !"inst_movep: fixme: I'm not implemented!\n", file cpu.post.c,
 line 2325
[/quote]

Guess I should implement movep, then :)

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sat Aug 09, 2014 6:50 pm
by zoriojh
Can you post the names of the A/UX images you've been trying, and the command you've been running? Off the top of my head, I don't think shoebill can just exit without printing some kind of error message.
Thanks for your reply.
I may have been unclear in my description, but when shoebill doesn't complain due to a bad ROM file or due to "The root A/UX disk needs to be at scsi ID 0" (among others), it doesn't silently exit.
It doesn't exit, but doesn't print or display anything either.

Here are two command that produce this result (no exit, no message, no window).
./shoebill_i386 rom=Macintosh\ IIcx.rom disk0=Apple_AUX_3.0.1/AUX_3.0.1_Install.iso
./shoebill_i386 rom=Macintosh\ IIcx.rom disk0=Apple_UNIX.iso

These are image files I found reading this thread.
I've tried to add a second disk (disk1=...), but it didn't change anything.

I hope the problem lies not in your program but in the user (me), stupid enough to not understand how to use it...

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sun Aug 10, 2014 5:14 am
by Cat_7
hi,

Is it true you have a space in "Macintosh\ IIcx.rom" ?
You can name your rom file "macii.rom" so you don't have to specify it.

You might want to try to set verbose startup by adding "verbose=1" to your command line.
You can also set the preferred size of your window with "height=768" "width=1024"

Best,
Cat_7

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sun Aug 10, 2014 12:05 pm
by zoriojh
Hello, thanks for your suggestions
You might want to try to set verbose startup by adding "verbose=1" to your command line.
You can also set the preferred size of your window with "height=768" "width=1024"
No effect. Neither the window size (but as no window appear, it's not a big surprise) nor the verbosity change anything.

As for the ROM file name, I renamed it to remove the space, just in case, but I would have been very surprised if it had changed anything : shoebill prints an arror message if I try a bad ROM file.

I guess the problems lies in the opening of the window (but why no error message ?).


Regards,

jh

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Sun Aug 10, 2014 8:41 pm
by zoriojh
Hey, I've made progress.

Installing the most recent Linux Mint distribution, things appear far better.
I've succeeded in launching shoebill (same command line than before).
Only problem : no mouse cursor. It *seems* (I mean, I'm not sure) that the mouse cursor stays at the bottom-right corner and never moves.
Anyway, as there were error messages in the console (stating that I had no 3D acceleration, and that I should), I reconfigured the VM with 3D acceleration. This time many more error messages (OpenGL related) and the program exits.

Still not there, but an improvement nevertheless.

For information, I also tried in a XP VM, but no way. It crashes immediately.

There something I have not tried yet : the Windows binary directly in OSX with Wine...

EDIT : just tried Wine, in a Vista bottle (in Wine speak), and it sorta works.
Problems with mouse cursor : there are two, the Mac cursor and the emulator's cursor, and it's difficult to reach your target with the emulator's cursor (is there a way to run full screen ?).
I still have to understand how to install A/UX on a blank disk, but anyway, that's good for now.

Cheers.

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Mon Aug 11, 2014 2:54 pm
by neozeed
> I still have to understand how to install A/UX on a blank disk, but anyway, that's good for now.


I did this earlier in this thread... It's a little involved, but once you get the methodology down it's not that hard. You need a disk with a UFS and a swap partition, format the UFS, backup the install media's live partition, and restore it to the UFS target. recreate the named pipe files that dump/restore can't recreate and then you are good to go.

I've done this with a quadra back in the day, and it is SO MUCH FASTER on shoebill.

Until Shoebill can talk to the outside world I wound't sweat it too much, and to run old MacOS programs try another emulator, but for some retro A/UX fun, this is the only way to go.

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Tue Aug 12, 2014 4:05 am
by pruten
zoriojh wrote:Hey, I've made progress.

Installing the most recent Linux Mint distribution, things appear far better.
I've succeeded in launching shoebill (same command line than before).
Only problem : no mouse cursor. It *seems* (I mean, I'm not sure) that the mouse cursor stays at the bottom-right corner and never moves.
Anyway, as there were error messages in the console (stating that I had no 3D acceleration, and that I should), I reconfigured the VM with 3D acceleration. This time many more error messages (OpenGL related) and the program exits.

Still not there, but an improvement nevertheless.

For information, I also tried in a XP VM, but no way. It crashes immediately.

There something I have not tried yet : the Windows binary directly in OSX with Wine...

EDIT : just tried Wine, in a Vista bottle (in Wine speak), and it sorta works.
Problems with mouse cursor : there are two, the Mac cursor and the emulator's cursor, and it's difficult to reach your target with the emulator's cursor (is there a way to run full screen ?).
I still have to understand how to install A/UX on a blank disk, but anyway, that's good for now.

Cheers.
Man, you are dedicated to getting this thing to work! XD I've had problems with the mouse on shoebill on linux virtualized on OS X too - something about the way the mouse is virtualized doesn't play well with SDL2 on linux. Probably something like that is causing a problem with Wine too.

You can build the SDL2 gui natively on OS X 10.7, that might be the easiest, most robust way to get things running. All you need is are the SDL2 dev libraries, and then you can run sdl-gui/osx_build.sh (provided you also have Xcode and the cli dev tools).

It built on 10.7 at least once successfully, but I no longer have access to that machine - or I'd post a binary :) And it seems to still build on 10.10 beta without much complaint.

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Tue Aug 12, 2014 6:19 pm
by zoriojh
You can build the SDL2 gui natively on OS X 10.7, that might be the easiest, most robust way to get things running. All you need is are the SDL2 dev libraries, and then you can run sdl-gui/osx_build.sh (provided you also have Xcode and the cli dev tools).
You know what ?
It works.

I should have read carefully everything you wrote, and I'd have been able to recompile this version earlier.

Anyway, it's almost perfect (still cursor issues, but less than with Wine).

So, I'm happy.

Thank you (and also to everyone that^H^H^H^H who helped).

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Thu Sep 04, 2014 3:31 am
by pruten
Teaser: ethernet is now working in a private branch :)

Image

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Thu Sep 04, 2014 9:08 am
by Cat_7
You can't do this to us ;-)

Lets reverse the flow from public to private and make the private public!

Best,
Cat_7

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Posted: Thu Sep 04, 2014 2:36 pm
by emendelson
This is amazingly impressive. Is there any hope of getting a "Unix" disk or its equivalent?