BasiliskII for Linux

About BasiliskII, a 68k Mac emulator for Windows, MacOSX, and Linux that can run System 7.x through MacOS 8.1.

Moderators: Cat_7, Ronald P. Regensburg

uhhu
Inquisitive Elf
Posts: 35
Joined: Wed Nov 19, 2008 4:58 pm

Post by uhhu »

madcrow wrote:I'm trying to do a 32-bit build for my old laptop running Fedora 14. Sadly, it seems that while the build appears to go well, things crash with an invalid pointer error as soon as I attempt to start emulation after finishing in the config screen.
Did you have JIT enabled? Every time I have successfully compiled BasiliskII, the program is much slower with JIT enabled and crashes very easily. So I run it with JIT disabled (or compile without JIT).

However, many many years ago I did see some speed improvement with JIT enabled - using precompiled binaries on windows machines.
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Yes, it is enabled.

Shall I link you the binary?
here it is: http://www.open.ou.nl/hsp/downloads/Bas ... 011.tar.gz
uhhu
Inquisitive Elf
Posts: 35
Joined: Wed Nov 19, 2008 4:58 pm

Post by uhhu »

Cat_7 wrote:I did a default install from a live cd, and then installed the development packages manually. That why I don't remember what I installed exactly.

I then downloaded the clean source and built it.
OK. Does the live CD have a "Software Development" installation option like the DVD? And are you running it 32 or 64 bits? My system is 64 bits although it probably is not the cause of the problem.

Since the thread has reached page 2, did you catch my edit on page 1 just before your answer:
One step closer to solving the "Present But Cannot Be Compiled" problem (from my ./configure output):

Code: Select all

checking whether we are using the GNU C compiler... no
 --- snip ---
checking whether we are using the GNU C++ compiler... no
But both the gcc and g++ are installed and do compile if the configure file is OK..The problem now is: how do I make autogen.sh (or configure) to find them?
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Hi,

I don't know if I could select a pre-defined package like "software development" when installing FC14, at least I didn't.
I'm running 32 bit Fedore 14 in VMWare.
I did see your configure errors, but I don't know how to solve them. Perhaps use another autoconf version (downgrade one version?)

Did you try my build?

Best,
Cat_7
uhhu
Inquisitive Elf
Posts: 35
Joined: Wed Nov 19, 2008 4:58 pm

Post by uhhu »

Cat_7 wrote:Did you try my build?
I have tried all your builds in this thread and they all give the error "bad ELF interpreter" (if I remember correctly).

BTW, I thought autoconf (autogen.sh) is for developers only. The tester-user (like me) should only be required to do the ./configure; make drill.
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Hi,

I refered to the last build, some 4 posts up. It was built in Fedora.
And no, the autogen/configure/make scripts are also for you and me to compile stuff. It just depends on whether the software needs those steps.

Best,
Cat_7
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Post by Amade »

Just checked... seems like autogen.sh is broken...

Which version of autoconf, autoheader, aclocal do you have?

Mine:
aclocal (GNU automake) 1.11.1
autoconf (GNU Autoconf) 2.68
autoheader (GNU Autoconf) 2.68
> NO_CONFIGURE=1 ./autogen.sh
+ Running aclocal: configure.ac:363: warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
/usr/share/aclocal/threadlib.m4:31: gl_THREADLIB_EARLY_BODY is expanded from...
/usr/share/aclocal/threadlib.m4:24: gl_THREADLIB_EARLY is expanded from...
/usr/share/aclocal/threadlib.m4:278: gl_THREADLIB is expanded from...
/usr/share/aclocal/lock.m4:9: gl_LOCK is expanded from...
/usr/share/aclocal/intl.m4:211: gt_INTL_SUBDIR_CORE is expanded from...
/usr/share/aclocal/intl.m4:25: AM_INTL_SUBDIR is expanded from...
/usr/share/aclocal/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
m4/gtk.m4:7: AM_PATH_GTK is expanded from...
configure.ac:363: the top level
configure.ac:363: warning: AC_RUN_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
/usr/share/aclocal/threadlib.m4:31: gl_THREADLIB_EARLY_BODY is expanded from...
/usr/share/aclocal/threadlib.m4:24: gl_THREADLIB_EARLY is expanded from...
/usr/share/aclocal/threadlib.m4:278: gl_THREADLIB is expanded from...
/usr/share/aclocal/lock.m4:9: gl_LOCK is expanded from...
/usr/share/aclocal/intl.m4:211: gt_INTL_SUBDIR_CORE is expanded from...
/usr/share/aclocal/intl.m4:25: AM_INTL_SUBDIR is expanded from...
/usr/share/aclocal/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
m4/gtk.m4:7: AM_PATH_GTK is expanded from...
configure.ac:363: the top level
configure.ac:1353: warning: AC_CACHE_VAL(ac_cv_gcc_no_strict_aliasing, ...): suspicious presence of an AC_SUBST in the second argument, where no actions should be taken
../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
configure.ac:1353: the top level
done.
+ Running autoheader: configure.ac:363: warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
aclocal.m4:3577: gl_THREADLIB_EARLY_BODY is expanded from...
aclocal.m4:3570: gl_THREADLIB_EARLY is expanded from...
aclocal.m4:3824: gl_THREADLIB is expanded from...
aclocal.m4:2685: gl_LOCK is expanded from...
aclocal.m4:1299: gt_INTL_SUBDIR_CORE is expanded from...
aclocal.m4:1113: AM_INTL_SUBDIR is expanded from...
aclocal.m4:202: AM_GNU_GETTEXT is expanded from...
m4/gtk.m4:7: AM_PATH_GTK is expanded from...
configure.ac:363: the top level
configure.ac:363: warning: AC_RUN_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
aclocal.m4:3577: gl_THREADLIB_EARLY_BODY is expanded from...
aclocal.m4:3570: gl_THREADLIB_EARLY is expanded from...
aclocal.m4:3824: gl_THREADLIB is expanded from...
aclocal.m4:2685: gl_LOCK is expanded from...
aclocal.m4:1299: gt_INTL_SUBDIR_CORE is expanded from...
aclocal.m4:1113: AM_INTL_SUBDIR is expanded from...
aclocal.m4:202: AM_GNU_GETTEXT is expanded from...
m4/gtk.m4:7: AM_PATH_GTK is expanded from...
configure.ac:363: the top level
configure.ac:1353: warning: AC_CACHE_VAL(ac_cv_gcc_no_strict_aliasing, ...): suspicious presence of an AC_SUBST in the second argument, where no actions should be taken
../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
configure.ac:1353: the top level
done.
+ Running autoconf: configure.ac:363: warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
aclocal.m4:3577: gl_THREADLIB_EARLY_BODY is expanded from...
aclocal.m4:3570: gl_THREADLIB_EARLY is expanded from...
aclocal.m4:3824: gl_THREADLIB is expanded from...
aclocal.m4:2685: gl_LOCK is expanded from...
aclocal.m4:1299: gt_INTL_SUBDIR_CORE is expanded from...
aclocal.m4:1113: AM_INTL_SUBDIR is expanded from...
aclocal.m4:202: AM_GNU_GETTEXT is expanded from...
m4/gtk.m4:7: AM_PATH_GTK is expanded from...
configure.ac:363: the top level
configure.ac:363: warning: AC_RUN_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
aclocal.m4:3577: gl_THREADLIB_EARLY_BODY is expanded from...
aclocal.m4:3570: gl_THREADLIB_EARLY is expanded from...
aclocal.m4:3824: gl_THREADLIB is expanded from...
aclocal.m4:2685: gl_LOCK is expanded from...
aclocal.m4:1299: gt_INTL_SUBDIR_CORE is expanded from...
aclocal.m4:1113: AM_INTL_SUBDIR is expanded from...
aclocal.m4:202: AM_GNU_GETTEXT is expanded from...
m4/gtk.m4:7: AM_PATH_GTK is expanded from...
configure.ac:363: the top level
configure.ac:1353: warning: AC_CACHE_VAL(ac_cv_gcc_no_strict_aliasing, ...): suspicious presence of an AC_SUBST in the second argument, where no actions should be taken
../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
configure.ac:1353: the top level
done.
Solution is to either downgrade or fix the configure.ac. I will have time in a week to investigate it some more
madcrow
Inquisitive Elf
Posts: 39
Joined: Mon Feb 16, 2009 1:06 am

Post by madcrow »

uhhu wrote:
madcrow wrote:I'm trying to do a 32-bit build for my old laptop running Fedora 14. Sadly, it seems that while the build appears to go well, things crash with an invalid pointer error as soon as I attempt to start emulation after finishing in the config screen.
Did you have JIT enabled? Every time I have successfully compiled BasiliskII, the program is much slower with JIT enabled and crashes very easily. So I run it with JIT disabled (or compile without JIT).

However, many many years ago I did see some speed improvement with JIT enabled - using precompiled binaries on windows machines.
I did have JIT enabled as it provides a HUGE speed boost on my system. Back when I had Fedora 13, I benchmarked my "Mac" as being about the Spped of a Quadra 605 without JIT and being faster than any 68K Mac ever made with it...
uhhu
Inquisitive Elf
Posts: 35
Joined: Wed Nov 19, 2008 4:58 pm

Post by uhhu »

I installed 32-bit Fedora 14 (from DVD) in VirtualBox. Again, I chose the "Software Development" option. The autogen.sh scripts works just fine (because the configure script does not report warnings). The conclusion is that the autogen.sh script does not work properly on 64-bit SciLinux and Fedora 14.

UPDATE:
I think I got it fixed! The problem is in the configure.ac file at lines 113-127:

Code: Select all

dnl Check if we should really be assuming x86_64 even if we detected HAVE_I386 above.
if [[ "x$HAVE_I386" = "xyes" ]]; then
  AC_TRY_RUN([
    int main(void) {
        #if defined(__x86_64__)
                return 0;
        #else
                return 1;
        #endif
    }
  ], [
    HAVE_I386=no
    HAVE_X86_64=yes
  ])
fi
I commented that block out by adding "dnl" to the beginning of each line. Now autogen.sh works correctly.
Last edited by uhhu on Wed Jan 26, 2011 10:14 pm, edited 1 time in total.
uhhu
Inquisitive Elf
Posts: 35
Joined: Wed Nov 19, 2008 4:58 pm

Post by uhhu »

madcrow wrote:I did have JIT enabled as it provides a HUGE speed boost on my system. Back when I had Fedora 13, I benchmarked my "Mac" as being about the Spped of a Quadra 605 without JIT and being faster than any 68K Mac ever made with it...
I had not run JIT enabled for a long time so I gave it a try to test my successful build. I run Speedometer, a very old bechmark application with JIT enabled and disabled. In every benchmark, JIT was faster from 2x to 20x (actually, some must have gone off the scale). However, I will not enable JIT because it crashed again. And it was a fresh system 7.5.5 installation using default options. I even tried with all extensions off but it still crashed.
madcrow
Inquisitive Elf
Posts: 39
Joined: Mon Feb 16, 2009 1:06 am

Post by madcrow »

Good news, folks. It turns out that BII isn't broken on Fedora 14, just my testing methodology. It turns out that BII will just silently crash of no disk images are attached. As soon as I even attached a blank image, it worked!
bd1308
Space Cadet
Posts: 1
Joined: Sun Feb 19, 2012 5:48 pm

Re: BasiliskII for Linux 13_09_2010 available

Post by bd1308 »

Cat_7,

I've been trying to build BasiliskII on Fedora 16/CentOS 6. I'm trying to setup my Development Tools/libraries/etc, but I think I may have a solution for you to manage your builds on multiple Fedora-ish platforms --- source RPMS


I'm getting some errors building BII, however once I get those fixed, I'll post the source rpms up here. With source RPMs, users can install those through YUM, and it will autobuild and install
EarlMosier
Space Cadet
Posts: 9
Joined: Sun Jul 04, 2010 11:10 pm
Location: Nashua, NH

Re: BasiliskII for Linux 13_09_2010 available

Post by EarlMosier »

Hi,

First, let me say that I love this version! It has been the easiest by far of any attempt I've made to get Basilisk II running.

I use to run Baskilisk II a couple of years ago on Ubuntu. I had created Mac disks for the system and all my applications. I recently bought a new computer and have 12.04 Xubuntu running on it. I have downloaded BasiliskII_SDL_Linux_13_09_2010, unzipped it, configured it with my existing MAC disk, and it started it great.

The one problem I'm having is that I get a warning, "No audio device found, audio output will be disabled." This is strange because I have audio working for several other applications.

I searched the forum for sound related problems and I don't see one exactly like mine. I verified that the built-in playback device is selected in the MAC OS. The BasiliskII output device is /dev/dsp and the mixer device is /dev/mixer.

BasiliskII is configured to emulate a MacIIci. I have tried both 68030 and 68040 CPU types. The ROM I have came from a Mac LC 580.

I did notice that the /dev/dsp and /dev/mixer devices do NOT exist on my system, so I suspect that's the source of the problem. How do I get those created? Any suggestions?

Thanks!


Earl
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: BasiliskII for Linux 13_09_2010 available

Post by Cat_7 »

Hi,

I believe the issue is that the new linux versions switched to a new audio subsystem (pulseaudio? or gstreamer?) They don't provide the two devices required. I have had problems trying to install the older sound system, also with the compatibility tools available in some software repositories.

I can't help here, perhaps someone else can.

Best,
Cat_7
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: BasiliskII for Linux 13_09_2010 available

Post by Ronald P. Regensburg »

Last edited by Ronald P. Regensburg on Sun Dec 09, 2012 9:30 am, edited 1 time in total.
Reason:  
User avatar
ClockWise
Site Admin
Posts: 4397
Joined: Mon May 20, 2002 4:37 am
Location: Uiwang

Re: BasiliskII for Linux 13_09_2010 available

Post by ClockWise »

Sound doesn't work. Maybe we should put a note in the setup guide.

This method worked for me, though:

http://emaculation.com/forum/viewtopic.php?f=1&t=7365

Also discussed in more detail over here:

http://emaculation.com/forum/viewtopic. ... 79&p=37383
EarlMosier
Space Cadet
Posts: 9
Joined: Sun Jul 04, 2010 11:10 pm
Location: Nashua, NH

Re: BasiliskII for Linux 13_09_2010 available

Post by EarlMosier »

Ron,

Thank you very much! The aoss command works great. There is a slight delay, but much, much better.

Thanks again!


Earl
JessiDLuvr
Space Cadet
Posts: 2
Joined: Mon Mar 25, 2013 9:16 am

Re: BasiliskII for Linux

Post by JessiDLuvr »

Cat_7 wrote:The ubuntu network driver is here:
http://www.open.ou.nl/hsp/downloads/sheep_net.ko.zip
The Debian network driver is here (Thanks to our forum member bmc5311 ). Build on 64bit Debian Squeeze kernel 2.6.32-5-amd64
http://www.open.ou.nl/hsp/downloads/she ... Debian.zip
Hi, Cat_7. Your Ubuntu nor Debian sheep_net builds don't work in Ubuntu 12.10 Quantal. I tried to follow the instructions and I get the following:

Code: Select all

sudo insmod sheep_net.ko 
[sudo] password for user: 
insmod: error inserting 'sheep_net.ko': -1 Invalid module format
My system is a 64-bit system running Kubuntu 12.10. Just a heads up, and even though it seems like networking is enabled, I get the following in a terminal when I launch it: "WARNING: Cannot open /dev/sheep_net (No such file or directory). Ethernet will not be available." Even without sheep_net.ko installed.

Thanks.

Just a quick intro of myself: I'm a long time computer user. Started on the Tandy CoCo in 1981. Loved the Mac when I realized that it had a Motorola processor like the CoCo (The CoCo had a 6809, early Macs had a 68K), but had been "indoctrinated" on Windows, but now use Linux. I use another web forum that uses the same software like this one, but I'd rather not discuss what it is on this one.
JessiDLuvr
Space Cadet
Posts: 2
Joined: Mon Mar 25, 2013 9:16 am

Re: BasiliskII for Linux

Post by JessiDLuvr »

JessiDLuvr wrote:
Cat_7 wrote:The ubuntu network driver is here:
http://www.open.ou.nl/hsp/downloads/sheep_net.ko.zip
The Debian network driver is here (Thanks to our forum member bmc5311 ). Build on 64bit Debian Squeeze kernel 2.6.32-5-amd64
http://www.open.ou.nl/hsp/downloads/she ... Debian.zip
Hi, Cat_7. Your Ubuntu nor Debian sheep_net builds don't work in Ubuntu 12.10 Quantal. I tried to follow the instructions and I get the following:

Code: Select all

sudo insmod sheep_net.ko 
[sudo] password for user: 
insmod: error inserting 'sheep_net.ko': -1 Invalid module format
My system is a 64-bit system running Kubuntu 12.10. Just a heads up, and even though it seems like networking is enabled, I get the following in a terminal when I launch it: "WARNING: Cannot open /dev/sheep_net (No such file or directory). Ethernet will not be available." Even without sheep_net.ko installed.

Thanks.

Just a quick intro of myself: I'm a long time computer user. Started on the Tandy CoCo in 1981. Loved the Mac when I realized that it had a Motorola processor like the CoCo (The CoCo had a 6809, early Macs had a 68K), but had been "indoctrinated" on Windows, but now use Linux. I use another web forum that uses the same software like this one, but I'd rather not discuss what it is on this one.
Forgive me, I just hadn't had my cup of coffee yet when I posted that. I downloaded your source, compliled the Net driver... tada! It works.

Screenies will follow soon... I hope.
fatfreddie
Space Cadet
Posts: 8
Joined: Sun May 05, 2013 2:02 am
Location: Berlin

Re: BasiliskII for Linux

Post by fatfreddie »

Is there any advantage of using the sheep_net driver over the slirp interface (which for me worked out of the box)?
fatfreddie
Space Cadet
Posts: 8
Joined: Sun May 05, 2013 2:02 am
Location: Berlin

Re: BasiliskII for Linux

Post by fatfreddie »

@JessiDLuvr: Would you care to share the exact steps for compiling the driver, please?
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: BasiliskII for Linux

Post by Cat_7 »

Go to src folder: src/macemu/BasiliskII/Unix/Linux/Netdriver and do a "make". Next do a "sudo make install"

To load the driver after the "sudo make install", you need to "su root" and "modprobe sheep_net" to actually load it. Then you can start BasiliskGUI, set the network to eth0, and run Basilisk.
Set you ip address etc to inside your current range.

Advantage: more complete networking support, including appletalk.

Best,
Cat_7
Last edited by Cat_7 on Fri May 10, 2013 3:59 pm, edited 1 time in total.
Reason:  
fatfreddie
Space Cadet
Posts: 8
Joined: Sun May 05, 2013 2:02 am
Location: Berlin

Re: BasiliskII for Linux

Post by fatfreddie »

Okay, thanks for your quick reply.

I compiled and installed the driver, loaded the module and changed the owner, seemingly all without errors. But in the settings menu eth0 doesn't show up, only wlan0 is present in the drop-down menu. In Basilisk, dhcp doesn't give me a working connection, nor does manually entering a static ip.
lsmod shows the sheep_net module to be loaded... Did I miss something here?
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: BasiliskII for Linux

Post by Cat_7 »

You don't have an cabled ethernet connection? I don't know whether the sheep_net driver can work over wireless. Just select it and try.

Did you set all the required networking parameters in Mac OS:
ip-address: a free address in the same range your host is in
subnet: 255.255.255.0
router: the same router your host uses
dns: same dns your host uses

Best,
Cat_7
fatfreddie
Space Cadet
Posts: 8
Joined: Sun May 05, 2013 2:02 am
Location: Berlin

Re: BasiliskII for Linux

Post by fatfreddie »

Okay, I finally got a working connection to the internet over wlan0 and static IP. Don't know why it didn't work before, I propably confused some of the connection details in the MacOS ethernet configuration. Thanks again Cat_7 for hinting me in the right direction!

Couldn't check for filesharing capabilities, yet (netatalk doesn't seem to work), but will report back as soon as I tested it.
Post Reply