Macintosh emulator v0.06b - cmd key

Just to let you guys know:
Today I adopted a BASIC program on the emu 0.06 with MS Basic 3.0 and compiled it with MS Basic Compiler 1.0 to a working self-contained Mac app. All on the emulator.

When you re-image a minimal system with both MS products on two 800k images, there is still plenty of space for own stuff. And using the systems “Set Startup” function you can autostart an app when the PicoCalc is switched on. This is really great. The Mac emu is my number one uf2 for now! :slight_smile:

Tomorrow I get a Micro-USB to USB-A adapter which I hope that it let me use a real mouse.

I also checked in an issue on Github about the missing cursor keys functionality. I am not at the point where I can provide code, but maybe in the future.

Ben, thanks for this great toy. I love it!

1 Like

Unfortunately, I removed the USB handling code from the original. Would have to put it back in.

Sorry, I currently don’t have time to dig into improving the port, but I was also imagining including bluetooth input.

:worried: oh no, I hoped so much to have easier cursor positioning with a mouse. But yes, Bluetooth would be even cooler.

Would it be possible to share the steps and pointers to the tools you used to prepare the image(s)? Not asking for pointers to the Mac software, but just the general process you used and the disk image editing tool(s). I’ve done this in the past but it’s long forgotten, and there are probably newer/better tools now anyway. Thought it might be nice to get a head start since you’ve already figured that out. Plus, others might be interested in running their own custom environments based on different pieces of software too. Thanks! :slight_smile:

You may laugh, but I made it all with the emulated Mac. The emu simulates two disk drives and comes with an 800k system disk. I first deleted all drivers, pics, fonts, accessories I don’t want from it. Then I inserted the first MS Basic disk as drive 2 and copied the files to my system disc. I ended up with two minimal systems with all MS files (you need 3 of the 4 MS disks, because the toolbox is redundant). Finally I mounted both, deleted the inactive system and copied all MS files on this 800k disk. Now I have the minimal system with tons of free project space and Interpreter and Compiler on the other.
So, this was a little time consuming, but just a logistic problem. I am happy to share the disks, if somebody is interested.

I loved to use the old Finder after decades of “forgetting” how lovely and clutter free the old Mac was.

2 Likes

I tried building this and got

[build] src/unix_main.c:38:10: fatal error: 'SDL.h' file not found
[build]    38 | #include "SDL.h"
[build]       |          ^~~~~~~
[build] 1 error generated.
[build] make: *** [src/unix_main.o] Error 1

Build steps I took

user@MacBook-Pro ~ % cd pico

user@MacBook-Pro pico % git clone https://github.com/benob/picocalc-umac.git
Cloning into 'picocalc-umac'...
remote: Enumerating objects: 156, done.
remote: Counting objects: 100% (156/156), done.
remote: Compressing objects: 100% (96/96), done.
remote: Total 156 (delta 87), reused 127 (delta 59), pack-reused 0 (from 0)
Receiving objects: 100% (156/156), 5.32 MiB | 5.94 MiB/s, done.
Resolving deltas: 100% (87/87), done.

user@MacBook-Pro picocalc-umac % git submodule update --init --recursive
Submodule 'external/pico_fatfs' (https://github.com/elehobica/pico_fatfs.git) registered for path 'external/pico_fatfs'
Submodule 'external/umac_multidrive' (https://github.com/jepler/umac.git) registered for path 'external/umac_multidrive'
Cloning into '/Users/user/pico/picocalc-umac/external/pico_fatfs'...
Cloning into '/Users/user/pico/picocalc-umac/external/umac_multidrive'...
Submodule path 'external/pico_fatfs': checked out 'a2fd968b3e4699c3fe1aa010544894f258d4e91a'
Submodule path 'external/umac_multidrive': checked out 'a59b9fbeb315f414c56873137405327929580b2c'
Submodule 'external/Musashi' (https://github.com/evansm7/Musashi.git) registered for path 'external/umac_multidrive/external/Musashi'
Cloning into '/Users/user/pico/picocalc-umac/external/umac_multidrive/external/Musashi'...
Submodule path 'external/umac_multidrive/external/Musashi': checked out 'b3144f12c1296d8fbb600eea13f5db71ffb1b8d8'

user@MacBook-Pro picocalc-umac % mkdir build && cd build

Then I used VS Code to build

Is there a pre-compiled 320x320 version?

Yeah, it needs to build and run the host version of the emulator to patch the rom. See gen-rom.sh. That in turn requires a working SDL2 installation.

The 320x320 resolution is a bit disappointing because most apps assume a larger screen, so there are buttons you cannot reach…

Let me know what your board is, I will compile a 320x320 version for it.

1 Like

Would it be possible to keep the 512 pixels in width and just resize the output to the 320 screen with some bars top and bottom?
A zoom in/out from this mode plus a working mouse would make this emu a real productivity environment.

1 Like

(Sorry for just getting back to you)

I’d love a Pico 2/2W version! But then again if it’s not going to make the windows fit, is there any point in the 320x320 version vs the current?

I built two uf2’s: A 512x320 screen and the other with a 320x320 screen. I launch the one from uf2loader for what I would like to do. Going from 384 to 320 in height does not seem to cause problems, but 512 to 320 is a big hurtle for apps.

I have a prototype running with pixel halving, but it is still too buggy to release.

1 Like

Cool. When you need testers for specific problems or just early adopters let me know!