LisaEm 2.0.0 released - anyone tried importing LOS source under emulation?

Started by coffeemuse, February 01, 2026, 12:23:49 PM

Previous topic - Next topic

coffeemuse

First off, congratulations to the LisaEm team on the 2.0.0 release! For anyone who hasn't seen it yet: https://github.com/arcanebyte/lisaem/releases/tag/2.0.0

This got me thinking about Alex's incredible work compiling LOS from source. I've been wanting to try it myself, but I don't have access to real Lisa hardware—so a LisaEm-only workflow is my only path forward at present. The challenge is getting the source files onto a Workshop disk image in the first place. Alex mentioned in the thread that he transferred everything one file at a time over serial on real hardware, which obviously isn't an option for me.

I'm curious: has anyone successfully imported the LOS source files onto Alex's starter image using LisaEm? I've attempted to set up an emulated serial port between the host and the emulated Lisa in the past, but I was never able to get communication working.

The 2.0.0 release notes mention improved Pseudo TTY serial port functionality and better documentation for both "Shell" and "Pseudo TTY" modes, which sounds promising. Has anyone had a chance to experiment with this yet?

Also, a related question: is Alex's glue.c patch still needed with LisaEm 2.0.0, or has that been addressed upstream?

Would love to hear if anyone has figured out an emulator-only workflow. Thanks!

AlexTheCat123

Quote from: coffeemuse on February 01, 2026, 12:23:49 PMThe 2.0.0 release notes mention improved Pseudo TTY serial port functionality and better documentation for both "Shell" and "Pseudo TTY" modes, which sounds promising. Has anyone had a chance to experiment with this yet?

No, I haven't messed around with this yet, but I'll let you know if/when I do! I honestly didn't know LisaEm 2.0 had even been released until you posted this...

Quote from: coffeemuse on February 01, 2026, 12:23:49 PMAlso, a related question: is Alex's glue.c patch still needed with LisaEm 2.0.0, or has that been addressed upstream?

It looks like LisaEm is still determining what OS is running using some "magic bytes" and setting the mouse scaling accordingly. So yeah, I think glue.c is still going to be needed. Luckily, it looks like the file hasn't been updated in 10 months, so my patched version should still work in the 2.0 release.

Quote from: coffeemuse on February 01, 2026, 12:23:49 PMWould love to hear if anyone has figured out an emulator-only workflow. Thanks!

Aside from transferring over all the files, everything else can be done in LisaEm, so you should be perfectly fine once you get over that hurdle. I tried to do all the compilation work on actual hardware to be fully authentic (even though it took forever), but there were a few cases where I had to "cheat" and break out LisaEm to do some useful things like examining RAM dumps and tracelogs, and I can confirm that it all works!

coffeemuse

Quote from: AlexTheCat123 on February 01, 2026, 04:10:44 PM
Quote from: coffeemuse on February 01, 2026, 12:23:49 PMAlso, a related question: is Alex's glue.c patch still needed with LisaEm 2.0.0, or has that been addressed upstream?

It looks like LisaEm is still determining what OS is running using some "magic bytes" and setting the mouse scaling accordingly. So yeah, I think glue.c is still going to be needed. Luckily, it looks like the file hasn't been updated in 10 months, so my patched version should still work in the 2.0 release.

Quote from: coffeemuse on February 01, 2026, 12:23:49 PMWould love to hear if anyone has figured out an emulator-only workflow. Thanks!

Aside from transferring over all the files, everything else can be done in LisaEm, so you should be perfectly fine once you get over that hurdle. I tried to do all the compilation work on actual hardware to be fully authentic (even though it took forever), but there were a few cases where I had to "cheat" and break out LisaEm to do some useful things like examining RAM dumps and tracelogs, and I can confirm that it all works!


Thanks for the quick response, Alex! Good to know the glue.c patch should still work with LisaEm 2.0.0.

I'll experiment a bit more with the new release and report back if I make any progress. Fingers crossed!

jamesdenton

Hi all!

The decision was made to bump to v2.0.0 to avoid confusion about release candidate versions and multiple 1.2.7 versions over the years. @TorZidan did some great work with the GitHub runners to build artifacts after every PR that can be downloaded and run without having to compile yourself. That said, there might be some requirements for the latest macOS/Windows operating system version depending on what GH uses.

Any and all PRs are welcomed!

TorZidan

The LisaEM "team" is basically me and @jamesdenton :)
We've exchanged, like, 10 emails total, and haven't met yet...
Ray passed away 3 years ago, and the project has not received much love since.
So I decided to jump in and revitalize it.
Note that the release files (and all continuous build artifacts) have been built on GitHub using "Github Actions" (unlike the manual builds provided by Ray previously). This should ease your mind about getting viruses and trojans on Windows. Still, the lisaem.exe file is unsigned, and you have to jump through some hoops to launch it on Windows. We may be able to overcome this by signing the file with a legit, free certificate from https://signpath.org . Will see.

In https://github.com/arcanebyte/lisaem/pull/36 I added a "Pseudo TTY" feature that lets you communicate with LisaEm over a fake/pseudo serial port on your (Linux) PC. My intent was to use it for transferring the LOS source files to LisaEm. Unfortunately, there is a bug in https://github.com/arcanebyte/lisaem/blob/master/src/lisa/io_board/z8530.c that prevents us from transferring files larger than a few bytes: I get errors 643 "Unexpected RS-232 interrupt" on the Lisa side (in LisaEm). The code in there is completely unreadable and undocumented, and I wasn't able to fix it. The data structures in file https://github.com/arcanebyte/lisaem/blob/master/src/include/z8530_structs.h allow addressing each SCC port by name AND by index, and Ray chose to address them both ways, which makes the code even more unreadable.

So I haven't been able to transfer the LOS source files into LisaEM.

In https://github.com/arcanebyte/lisaem/pull/39 I added support for "raw" profile image files, such as the ones used by Profile Hard drive hardware emulators IDEFile, ESProfile, Cameo/Aphid, etc.
So if anyone has a profile image file with the LOS sources on it (I don't), please copy it over to your PC, "mount" it in LisaEm and try to compile LOS. I am curious if it will work (meaning "not crash the emulator"). From my experience, LisaEm is quite stable and is up to the task.






sigma7

Quote from: TorZidan on Yesterday at 12:15:41 AMI get errors 643 "Unexpected RS-232 interrupt" on the Lisa side (in LisaEm).
snua12 was getting the same error on real Lisa hardware... is it possible it is not a bug but accurate emulation?
Conclusion of the issue for snua12: https://lisalist2.com/index.php?msg=4948
Warning: Memory errors found. ECC non-functional. Verify comments if accuracy is important to you.

coffeemuse

Quote from: TorZidan on Yesterday at 12:15:41 AMThe LisaEM "team" is basically me and @jamesdenton :)
We've exchanged, like, 10 emails total, and haven't met yet...
Ray passed away 3 years ago, and the project has not received much love since.
So I decided to jump in and revitalize it.
Note that the release files (and all continuous build artifacts) have been built on GitHub using "Github Actions" (unlike the manual builds provided by Ray previously). This should ease your mind about getting viruses and trojans on Windows. Still, the lisaem.exe file is unsigned, and you have to jump through some hoops to launch it on Windows. We may be able to overcome this by signing the file with a legit, free certificate from https://signpath.org . Will see.

In https://github.com/arcanebyte/lisaem/pull/36 I added a "Pseudo TTY" feature that lets you communicate with LisaEm over a fake/pseudo serial port on your (Linux) PC. My intent was to use it for transferring the LOS source files to LisaEm. Unfortunately, there is a bug in z8530.c that prevents us from transferring files larger than a few bytes: I get errors 643 "Unexpected RS-232 interrupt" on the Lisa side (in LisaEm). The code in z8530.c is completely unreadable and undocumented, and I wasn't able to fix it. The data structures in file https://github.com/arcanebyte/lisaem/blob/master/src/include/z8530_structs.h allows addressing each SCC port by name AND by index, and Ray chose to address them both ways, which makes the code completely unreadable.

So I haven't been able to transfer the LOS source files into LisaEM.

In https://github.com/arcanebyte/lisaem/pull/39 I added support for "raw" profile image files, such as the ones used by Profile Hard drive hardware emulators IDEFile, ESProfile, Cameo/Aphid, etc.
So if anyone has a profile image file with the LOS sources on it (I don't), please copy it over to your PC, "mount" it in LisaEm and try to compile LOS. I am curious if it will work (meaning "not crash the emulator"). From my experience, LisaEm is quite stable and is up to the task.


Thank you for the detailed response and for all the work you and @jamesdenton have been putting into LisaEm! It's wonderful to see the project receiving attention again.

I was aware of Ray's passing as I had interacted with him briefly several years ago regarding some LisaEm compilation issues. His contributions to the Lisa community were immense, and it's great to see others carrying the torch forward.

Thanks for the explanation about the Pseudo TTY bug and the RS-232 interrupt issue. That's a shame, but I appreciate knowing where things stand rather than spinning my wheels trying to get it working.

Your suggestion about the raw Profile image support is a good one. I might reach out to someone with real Lisa hardware and a Profile emulator to see if they'd be willing to let their hardware be used to import the source files. That would definitely be a workaround until the serial transfer issues get sorted out.

Thanks again for jumping in to keep LisaEm alive!