RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Macintosh (Basilisk II) 8-bit Color

    Scheduled Pinned Locked Moved Help and Support
    basilisk iimacintosh8-bit color
    222 Posts 11 Posters 90.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • mediamogulM
      mediamogul Global Moderator
      last edited by mediamogul

      Meneer Jansen over in "Gaming and General Discussion" was talking about an older Mac game he got working on RetroPie's Basilisk Emulator and it reminded me that I've yet to get a game working that requires 256 colors (8-bit color). This is particularly frustrating because almost any game for the Mac of that era requires it be run in 8-bit color. I have a posting aimed in his direction, but I thought someone here might have some insight as well.

      What happens is, every time the emulated MacOS tries to make the switch to 256 colors, Basilisk freezes and RetroPie must be restarted. I have tried MacOS 8.1 & 7.5.5, as well as a Performa and Quadra 900 system rom (changing the corresponding config settings with each), all with the same results. I have tried the default config, as well as trying it with 32 & 64 MB of emulated memory. All in all, I've tried more combinations than I can really work into this post. If anyone has manged to get Basilisk to run or boot in 256 colors without crashing, I would be most interested to learn the technique.

      RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

      1 Reply Last reply Reply Quote 0
      • mediamogulM
        mediamogul Global Moderator
        last edited by mediamogul

        I've done a bit more research and have discovered that the version of Basilisk II in RetroPie is simply incapable of running in 8-bit color. I have to admit, it's a little disappointing, as it severely cuts the number of games that are capable of running to a much smaller list. However, the later games that use 16-bit color and higher should run fine, so I guess I'm going to settle on MacOS 8.1, which is the highest version that Basilisk II will support. That should ensure the greatest level of compatibility with later generation games and stay within the technical limitations of the emulator.

        Edit: For anyone interested now or in the future, a workaround is being discussed at:
        https://retropie.org.uk/forum/topic/166/what-are-you-playing/41

        RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

        1 Reply Last reply Reply Quote 1
        • Meneer JansenM
          Meneer Jansen
          last edited by Meneer Jansen

          Thank you for opening a separate topic about this.

          I didn't even know that BasiliskII (a classic Apple Mackintosh emulator) was included in RetroPie (or Raspbian for that matter). I compiled it from source code the first time. I compiled it as described in ref. [1] and [2]. That leaves you w/ a BII version that uses SDL for video and audio. SDL video is nice because it does not need an X server (i.e. something like LXDE) to work. So you can start it from the Emulationstation menu.

          However, like said above, BII cannot be run in 8 bit color (= 256 color) mode. The greatest platform game ever made by man (Prince of Persia 2 - The Shadow and the Flame) must be run in 8 bit mode. Bummer! So one has to de-install the version installed by RetroPie (or Raspbian for that matter) and compile an other one instead.

          This leaves you w/ another problem. If you've installed RetroPie from an SC card image than I think that no LXDE (i.e. a graphical desktop environment) is included on your Pi. I installed Raspbian (a Linux operating ystem for the Pi based on Debian) on my Pi and afterwards I installed RetroPie from a (shell) script (link).

          Anyway, to play PoP2 on your Pi, here's my personal HowTo:

          Compile BII from source

          1. Instead of like in [1] do not try to install libgtk2-dev but install libgtk2.0-dev!

          2. Don't forget to apt-get update.

          3. Use git clone https://github.com/cebix/macemu.git

          4. The command aclocal ; autoconf don't work (?)

          5. BII w/ SDL graphics (no X needed) does not support 8 bit (256) color mode so NO Prince2 that way. So one has to compile BasiliskII w/ framebuffer support instead of SDL. Unfortunately this also meand that BII has to be started from within X (i.e. LXDE in Raspbian). Use the following options to compile BII and (SDL) sound and 8 bit mode will work in X.

            ./configure --disable-vosf --disable-jit-compiler --without-gtk --enable-sdl-audio --enable-fbdev-dga

          From the Readme [3]:

          dga/<frame buffer name> [if Basilisk II was configured with --enable-fbdev-dga] Full-screen display using the frame buffer device /dev/fb. The color depth (8/15/24 bit) depends on the depth of the underlying X11 screen. The "frame buffer name" is looked up in the "fbdevices" file (whose path can be specified with the "fbdevicefile" prefs item) to determine certain characteristics of the device (doing a "ls -l /dev/fb" should tell you what your frame buffer name is).

          1. Add to settings file /home/pi/.basilisk_ii_prefs for PoP2 in full screen in BasiliskII:

            screen win/512/384

          2. Full screen in LXDE: Alt F11.

          3. Set LXDE to 512 x 384: start the Pi in 512 x 384 mode. For this to one should edit on the Pi the file /boot/config.txt and alter/add the following options (example below for my flatscreen 16:9 television):

                # uncomment to force a console size. By default it will be display's size minus overscan.
                framebuffer_width=512
                framebuffer_height=384
                # It is recommended to set monitor mode to DMT (i.e hdmi_group=2), see below in HDMI section
                # HDMI SECTION:
                # HDMI group 1 = CEA, group 2 = DMT.
                # [http://elinux.org/RPiconfig]
                # CEA modes (goup 1) are meant for TV, DMT modes (group 2) for computer monitors.  
                # Group1/mode1 = VGA; group2/mode4 = 640 x 480 @60 Hz; 
                # group2/mode9 = 800 x 600 @60 Hz; group2/mode16 = 1024 x 768 @60 Hz;
                # group2/mode23 = 1280 x 768 @60Hz (16:9);
                hdmi_group=1
                hdmi_mode=1
          
          1. After startx you'll get the LXDE desktop environnment/GUI and then you should run BasiliskII from there (in a terminal window for instance). Music is a bit too slow but effects work just fine. The music probably is generated by a (virtual) sound card (Midi?) and the sound effects might be samples. The samples play fine, the emulation of the sound card might be too slow.

          The game itself is playable, i.e. not too slow. Great!

          Procedure from [2]

          Basilisk II, a 68K Mac emulator running on the Raspberry Pi. Everyone asks if the Pi can do this or that. If you can do it on Linux and compile it, the answer is usually "yes"! The other limiting factor is CPU power, but Basilisk runs just fine as you can see. The only trick here was building from source (it's not in the Raspbian repos) which was easy (updated for May 2013 Raspbian):

          # apt-get install git libsdl1.2-dev autoconf libgtk2-dev libxxf86dga-dev libxxf86vm-dev libesd0-dev
          # git clone github.com/cebix/macemu
          # cd macemu/BasiliskII/src/Unix
          # aclocal ; autoconf         
          

          Remark: maybe: ./autogen.sh (might not be necessary if custom ./configure is used)

          # autoreconf -I ./m4
          # ./configure --enable-sdl-video --enable-sdl-audio --disable-vosf --disable-jit-compiler --without-gtk
          # make install
          

          There is no 68000 JIT for ARM CPUs yet so it's not lightning-fast but is eminently usable. As ever, it runs faster on the console (as shown here) without the bloat of Xorg. 8-bit color mode crashed but all the other modes including 16-bit color works fine. Audio lags by around or perhaps a little more than 500ms.

          The contents of my .basilisk_ii_prefs:

          disk /home/pi/mac/Basildisk < == changeme
          extfs /home/pi/mac < == changeme
          screen win/640/480
          seriala /dev/cu.Bluetooth-Modem
          serialb /dev/null
          ether slirp
          udptunnel false
          udpport 6066
          rom /home/pi/mac/iici.rom < == changeme
          bootdrive 0
          bootdriver 0
          ramsize 67108864
          frameskip 0
          modelid 5
          cpu 3
          fpu true
          nocdrom false
          nosound false
          noclipconversion false
          nogui false
          jit false
          jitfpu false
          jitdebug false
          jitcachesize 8192
          jitlazyflush true
          jitinline true
          keyboardtype 5
          keycodes false
          mousewheelmode 1
          mousewheellines 3
          dsp /dev/dsp
          mixer /dev/mixer
          ignoresegv true
          idlewait true
          

          Procedure from [1]

          # apt-get install git libsdl1.2-dev
          # git clone github.com/cebix/macemu
          # cd macemu/BasiliskII/src/Unix
          # NO_CONFIGURE=1 ./autogen.sh
          # ./configure --enable-sdl-video --enable-sdl-audio --disable-vosf --disable-jit-compiler
          # make install
          

          References

          [1] www.emaculation.com/forum/viewtopic.php?f=6&t=8009

          [2]

          [3] Readme:
          http://basilisk.cebix.net/README
          (see official website under "Genaral infoermation": http://basilisk.cebix.net)

          [4] Official website:
          http://basilisk.cebix.net

          Still reading this? Then you're a real tough fellow ! If you've ever played PoP2 on MS-DOS and liked it then I can really recommend the procedure above to compile BII to play the superior Mac version! The orig. Mac version is close to something that might even be commercially released on a lightweight portable game platform today. Well, almost then... ;-)

          Avid Linux user.

          mediamogulM 1 Reply Last reply Reply Quote 1
          • mediamogulM
            mediamogul Global Moderator @Meneer Jansen
            last edited by mediamogul

            @Meneer-Jansen said in Macintosh (Basilisk II) 8-bit Color:

            The orig. Mac version is close to something that might even be commercially released on a lightweight portable game platform today. Well, almost then... ;-)

            I agree. It's a gorgeous game. I up-voted your post here earlier, but I wanted to wait until I could digest it's contents completely before I commented. This reference guide you put together really is streets ahead. Seeing as how so many of the old Mac games relied on 8-bit color, this will likely serve as a great one-stop tutorial to all the Pi users out there left scratching their heads over this issue. I look forward to giving it a go myself and vanquishing the evil Jaffar once and for all.

            Thanks again.

            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

            Meneer JansenM 1 Reply Last reply Reply Quote 0
            • Meneer JansenM
              Meneer Jansen @mediamogul
              last edited by Meneer Jansen

              @mediamogul said in Macintosh (Basilisk II) 8-bit Color:

              @Meneer-Jansen said in Macintosh (Basilisk II) 8-bit Color:

              The orig. Mac version is close to something that might even be commercially released on a lightweight portable game platform today. Well, almost then... ;-)

              I agree. It's a gorgeous game. I up-voted your post here earlier, but I wanted to wait until I could digest it's contents completely before I commented. This reference guide you put together really is streets ahead. Seeing as how so many of the old Mac games relied on 8-bit color, this will likely serve as a great one-stop tutorial to all the Pi users out there left scratching their heads over this issue. I look forward to giving it a go myself and vanquishing the evil Jaffar once and for all.

              Thanks again.

              I'm afraid I have to agree w/ you that it's not for the faint of hart. You'l need quite some Pi skills and Linux skills. Most of the fun must be sought in acquiring computer skills, not so much in playing PoP2, ha ha.

              Anyway, summarizing it comes to this:

              1. Install the graphical user interface/desktop environment
                or this (if at all (still) possible on RetroPie) or re-install RetroPie w/ a script after instaling Raspbian on your Pi (again, if at all still possible) with this script and tutorial.
              2. Compile BasiliskII from source code w/ the option to not use SDL for video but framebuffer/DGA.
              3. Install MacOS operating system on it or download from PoP Unofficial Website the so called PoP Macintosh Total Pack.
              4. Optionally: fiddle a bit w/ RetroPie to get a 512x384 game to play full screen.

              You might also try to use the executable/binary that I compiled for my Pi 1B (mediafire link). I don't even know if it will run stand-alone though... Good luck! :-)

              Avid Linux user.

              mediamogulM 2 Replies Last reply Reply Quote 1
              • mediamogulM
                mediamogul Global Moderator @Meneer Jansen
                last edited by

                @Meneer-Jansen said in Macintosh (Basilisk II) 8-bit Color:

                it's not for the faint of hart.

                Fortune favors the bold. ;)

                Thanks again. Your time and attention to this issue is much appreciated.

                RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                edmaul69E 1 Reply Last reply Reply Quote 0
                • mediamogulM
                  mediamogul Global Moderator @Meneer Jansen
                  last edited by mediamogul

                  @Meneer-Jansen said in Macintosh (Basilisk II) 8-bit Color:

                  You might also try to use the executable/binary that I compiled for my Pi 1B (mediafire link). I don't even know if it will run stand-alone though... Good luck! :-)

                  Just a FYI to those who might try. By itself, this executable has dependencies that are not met. Thanks for the link though. It was worth a shot, and I still look forward to using your guide in full when I get a little more time to experiment.

                  RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                  Meneer JansenM 1 Reply Last reply Reply Quote 0
                  • Meneer JansenM
                    Meneer Jansen @mediamogul
                    last edited by

                    @mediamogul said in Macintosh (Basilisk II) 8-bit Color:

                    @Meneer-Jansen said in Macintosh (Basilisk II) 8-bit Color:

                    You might also try to use the executable/binary that I compiled for my Pi 1B (mediafire link). I don't even know if it will run stand-alone though... Good luck! :-)

                    Just a FYI to those who might try. By itself, this executable has dependencies that are not met. Thanks for the link though. It was worth a shot, and I still look forward to using your guide in full when I get a little more time to experiment.

                    I could also post the files it needs and tell you where they are installed. Also realize that you need to run this executable in a terminal window in LXDE (it needs X). Do you get an error message and could you post it here? Maybe in the error mess tells what files it misses...

                    Avid Linux user.

                    mediamogulM 1 Reply Last reply Reply Quote 0
                    • mediamogulM
                      mediamogul Global Moderator @Meneer Jansen
                      last edited by

                      @Meneer-Jansen

                      I do appreciate it, but it's probably best that it be compiled and installed as your guide intends or else we'll just be asking for trouble.

                      RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                      1 Reply Last reply Reply Quote 0
                      • Meneer JansenM
                        Meneer Jansen
                        last edited by

                        I tried to run the BasiliskII executable from a location other than the standard location (i.e. /home/pi/ instead of /usr/local/bin/). It appears to need a config file (i.e. /home/pi/.basilisk_ii_prefs), a ROM for the virtual Mac and a hard disk image for the virtual Mac (both can be nicked from the PoP Mac total Pack). And BasiliskII needs to be started from within LXDE. One might try to find a good tutorial to install and start LXDE in RetroPie and do an experiment w/ the BasiliskII executable that I posted. Might save one the time and trouble of compiling it from source...

                        Good luck everybody. :-)

                        Avid Linux user.

                        1 Reply Last reply Reply Quote 0
                        • mediamogulM
                          mediamogul Global Moderator
                          last edited by mediamogul

                          Last night, I was fortunate enough to stumble onto somewhat of a solution to this problem. Using the runcommand-onstart, we can now set the framebuffer to 8-bit color on launch by adding:

                          if [ "$2" = "basilisk" ]; then
                          fbset -depth 8
                          fi
                          

                          With this enabled, games running in 8-bit color will now be visible. From here, I want to reset the default color depth on exit in the runcommand-onend script. Am I correct in assuming that the default color depth is 16-bit 32-bit?

                          if [ "$2" = "basilisk" ]; then
                          fbset -depth 32
                          fi
                          

                          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                          BuZzB 1 Reply Last reply Reply Quote 0
                          • BuZzB
                            BuZz administrators @mediamogul
                            last edited by BuZz

                            @mediamogul it's 32 bit now.

                            I could probably add some framebuffer depth setting to runcommand. Ill look into it.

                            To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                            mediamogulM 1 Reply Last reply Reply Quote 3
                            • mediamogulM
                              mediamogul Global Moderator @BuZz
                              last edited by

                              @BuZz

                              Oh wow, that would be fantastic. Thanks.

                              RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                              herb_fargusH 1 Reply Last reply Reply Quote 0
                              • herb_fargusH
                                herb_fargus administrators @mediamogul
                                last edited by

                                @mediamogul I haven't looked into it too extensively but there are some colour type Macs for the minivmac emulator though currently the macplus is the only binary it compiles

                                If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

                                Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

                                mediamogulM 1 Reply Last reply Reply Quote 0
                                • mediamogulM
                                  mediamogul Global Moderator @herb_fargus
                                  last edited by

                                  @herb_fargus

                                  Very keen! My childhood best friend had a Macintosh Plus. I think that was the first time I ever played 'Deja Vu'. Has SheepShaver ever been considered for Retropie? If I remember right, it's capable of emulating a PowerPC up to System 9.0.4.

                                  RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                  1 Reply Last reply Reply Quote 0
                                  • mediamogulM
                                    mediamogul Global Moderator
                                    last edited by mediamogul

                                    Just tested 'Prince of Persia 2: The Shadow and the Flame' and it runs like a champ with the framebuffer set to 8-bit color depth. A runcommand setting would indeed be most helpful for games that require a higher color depth, as the screen now turns black when the emulated Mac is set to "Thousands of Colors". It's been a long time coming, but it was well worth the wait to play this great game again. I'm marking this as solved. Thanks again @Meneer-Jansen and @BuZz for your help with this.

                                    RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                    BuZzB 1 Reply Last reply Reply Quote 0
                                    • BuZzB
                                      BuZz administrators @mediamogul
                                      last edited by

                                      @mediamogul I made a ticket for myself on the issue tracker. Nice find btw. Strangely I did try switching framebuffer depth before and it didn't work. I obviously did something wrong or a firmware change has affected something. Nice one!

                                      To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                                      1 Reply Last reply Reply Quote 1
                                      • edmaul69E
                                        edmaul69
                                        last edited by

                                        Got this all working today with a "1gb hard drive". Now i notice on the pi the mouse skips. Which makes using paint impossible. Closing stuff gets to be a pain too. Is it possible to have the mouse working a little better? On windows obviously it is flawless. Im going to install doom for fun just to see how bad it runs.

                                        mediamogulM 1 Reply Last reply Reply Quote 0
                                        • mediamogulM
                                          mediamogul Global Moderator @edmaul69
                                          last edited by

                                          @edmaul69

                                          The mouse doesn't skip on mine for whatever reason. I've even tried it with a few mouse-based games and it's pretty smooth.

                                          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                          edmaul69E 2 Replies Last reply Reply Quote 0
                                          • edmaul69E
                                            edmaul69 @mediamogul
                                            last edited by

                                            @mediamogul strange. I have it with a premade 30mb drive and the 1gb one i made. The skip is so big that the blue squares on the background are slightly smaller than the space between each mouse jump. I watched a youtube video where the guy had the same issue.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.