[Solved] How to update Mini vMac with a new version
-
The Mini vMac binary shipping with Retropie 4.5 is version 3.3.3 which is now 6 years old. Nobody could solve the flickering/jumping mouse cursor issue I've described 2 days ago, so I was wondering: Since there is a recent ARM-based version available for download on the Gryphel website (software author), how would one proceed to update the binary on a Retropie?
Here's what I tried:
Under /opt/retropie/emulators/minivmac/ I copied the binary and named it "minivmac-new" and gave it exactly the same permissions as Retropie's minivmac.
Then under /opt/retropie/configs/macintosh/ I edited the emulators.cfg file and added a new line like this:
minivmac-new = "pushd /opt/retropie/emulators/minivmac-new; /opt/retropie/emulators/minivmac/minivmac-new /home/pi/RetroPie/roms/macintosh/Mac\ OS\ 7.5.3.dsk %ROM%; popd"Now, when I launch a disk image and hold down a controller button, I get the launch menu and I can select the "minivmac-new" binary, but it doesn't work, the screen fades to black and Retropie comes back up 2 seconds later.
I'm sorry if this is not how it works and my post looks cringey, I am not Linux savvy that much :P Thanks!
-
@marc-tremblay Did you make the file executable ?
chmod +x /opt/retropie/emulators/minivmac/minivmac2-new
If that fails, it might be compiled on another ARM platform (I supposed you downloaded the ARM version, for the PI's CPU) and some errors might be logged in
/dev/shm/runcommand.log
- check there if you can't make it start. -
Just for double checking, I sudo chmod'ed +x again, didn't change anything (as permissions were already set accordingly)
/dev/shm/ is empty, there is no /dev/shm/runcommand.log file. I don't know if this file gets deleted on boot, but the way I have to work at the moment is that after I tried Retropie on my TV where there is no ethernet cable, I have to unplug the Raspberry Pi, go to my room where there is an ethernet cable, plug it in and boot it, then I can access via SSH and SFTP. I don't know if this file is deleted on boot, that could explain why there is nothing in /dev/shm/ perhaps?
"I supposed you downloaded the ARM version, for the PI's CPU" >> This is the binary I got: https://www.gryphel.com/c/minivmac/dnld_std.html >> Linux >> ARM (50K) >> https://www.gryphel.com/d/minivmac/minivmac-36.04/minivmac-36.04-larm.bin.tgz
-
@marc-tremblay The version you downloaded needs an X11 environment to run - the Deskop - so it will not work out-of-the-box in RetroPie.
As for the log file, yes, it's cleared on boot and it's only available after you've run a ROM/game. The/dev/shm
folder is stored in RAM, so its contents are not saved to the disk. -
So unless you always boot Retropie in a LAN enabled environment, there is therefore no way to debug this. I have ordered a long ethernet cable so that my TV room can be wired to my router, it will then be much easier to debug issues and also I was getting tired of unplugging and moving the Pi to another room every time I wanted to feed roms to it ;-)
OK so about the X11 desktop environment, how did Retropie programmers manage to make version 3.3.3 run without X11 then?
-
@marc-tremblay said in How to update Mini vMac with a new version:
So unless you always boot Retropie in a LAN enabled environment, there is therefore no way to debug this.
That's why wireless was invented :).
OK so about the X11 desktop environment, how did Retropie programmers manage to make version 3.3.3 run without X11 then?
The version included in RetroPie is based on a SDL2 port of
minivmac
, which is not dependant on X11. -
@mitu said in How to update Mini vMac with a new version:
That's why wireless was invented :).
WLAN is still LAN and Rpi 2 models don't come with WiFi, so I still have to run cable, unless I find a WiFi dongle that works with Retropie 4.5. You remind me that I purchased a WiFi-N dongle not too long ago, I should try it :P
The version included in RetroPie is based on a SDL2 port of minivmac, which is not dependant on X11.
OK so how would one proceed to do that with a new Mini vMac version? The source code is available, so could somebody post instructions on how to compile it onto Retropie 4.5 ? I mean, onto the OS that comes with Retropie 4.5, I guess Raspbian or something?
-
Alright so I tried my WiFi-N dongle and it works! Now that I can actually see the contents of the /dev/shm/runcommand.log this is what it contains after trying to launch minivmac2-new:
Parameters: Executing: pushd /opt/retropie/emulators/minivmac; /opt/retropie/emulators/minivmac/minivmac2-new /home/pi/RetroPie/roms/macintosh/Mac\ OS\ 7.5.3.dsk "/home/pi/RetroPie/roms/macintosh/Mini vMac color.txt"; popd /opt/retropie/emulators/minivmac ~ Cannot connect to X server. ~
...So yeah, it says it can't connect to X server, probably because it's trying to use X11 instead of SDL. We need somebody Linux savvy enough to take the available source code on the Gryphel website and compile both the current Mac Plus and Macintosh II versions of Mini vMac for use with SDL2! I can pay 10$ to whoever does that and posts their binaries here.
-
We need somebody Linux savvy enough to take the available source code on the Gryphel website and compile both the current Mac Plus and Macintosh II versions of Mini vMac for use with SDL2! I can pay 10$ to whoever does that and posts their binaries here.
Sounds like a great opportunity for you to become Linux savvy eh?
-
Well... I already put 10 hours in learning how to set up, use and even customize Retropie 4.5. I wasn't planning on spending a week in learning how to compile binaries under Linux! :D At least now, we know what it takes: Mini vMac binary needs to be compiled for Linux ARM with SDL2 API, not X Window System.
BTW, I laughed at your intro: "I wrote the documentation that you don't read." XD
-
(Deleted ^^;)
-
Did you see that the site will actually compile variations for you?
https://www.gryphel.com/c/minivmac/vart_srv.html would let you put in the "-api sd2" flag.
-
-api sd2 is a developer flag, I'm not sure that it can actually be used in the custom variation service. Either way, I have donated 10$ to Gryphel which should entitle me to a variation service sponsor code that I intend to use to try your suggestion out. We'll see!!
EDIT: Nope. Doesn't work.
Sorry, the build system rejected this variation, because: -cpu is a developer only option options : -br 36 -t larm ! -cpu arm -api sd2 time : Sat Jul 27 11:55:26 2019 failed to build
-
Wow, turns out I managed to use GCC to compile my own build. I tested SDL 2.0 and while it technically works, it's unusuable, because the only visible part at any given time on the screen is the currently drawn area, so every time there is a sprite or an icon or part of the GUI refreshed, that's the only thing you see, all the rest is black. You can move the mouse to refresh a tiny rectangle all over the place, but really it's unusable.
I have then tried with SDL 1.2 (-api sdl) and it actually works flawlessly. The surface is enlarged to fit perfectly fine and centered on my TV, everything works fine, I even played Crystal Crazy and it works beautifully in 256 colors :)
Turns out compiling Mini vMac is super easy even for a n00b like me, thanks to instructions on this page from Gryphel which made the process dummy proof, just copy/paste the command line and add your own variation options to it and boom it compiles and it works: https://www.gryphel.com/c/minivmac/build.html
Here's my final Macintosh II build command for anybody reading this in the future:
./setup_t -t larm -cpu arm -api sdl -m II -hres 800 -vres 600 -depth 3 -speed 1 -mem 8M -sound 1 > setup.sh
Here's my final Macintosh Plus build command for anybody reading this in the future:
./setup_t -t larm -cpu arm -api sdl -m Plus -hres 640 -vres 480 -depth 0 -speed 1 -mem 4M -sound 1 > setup.sh
/!\ ** TO RETROPIE ADMINS:** You should REALLY update the Mini vMac binary that comes with Retropie, as the one you ship with Retropie 4.5 is bugged and my mouse cursor is always stuck in the top/left corner, but the one I just compiled myself from current source code on Gryphel website (version 36.04) works flawlessly. If you want I can post a link here to download both my Macintosh Plus and Macintosh II binaries here or PM me.
You can now download 36.04 binaries for both Mac II and Mac Plus here: https://www.macintoshrepository.org/25178-mini-vmac-for-raspberry-pi-retropie
-
I too ended up compiling the current stable build. Had same issue as you did with SDL 2. SDL 1.2 works great. Only items needed on the make builder were
./setup_t -t larm -api sdl
Enjoying Ancient Art of War on the Mac via RetroPie :-)
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.