I've successfully built LOS from source!

Started by AlexTheCat123, June 16, 2025, 02:09:07 PM

Previous topic - Next topic

AlexTheCat123

Some of you might be aware that I've been working towards building all of LOS from the Apple-provided source code over the past 5 months, and I'm happy to announce that I'm finally done!


I'm going to be exhibiting VCF Southwest this coming weekend, and I'll be giving a presentation with @warmech on Saturday at 10:30AM that goes over the entire journey and some of the interesting things that I discovered along the way. So if anyone else is going to be there, then feel free to come and see our table (the one with the 4 or 5 Lisas) and the presentation in person! If not, it'll be posted on YouTube about 24-48 hours afterwards.


I don't want to spoil anything before then, so I won't really be giving any more big details until the presentation, but of course I'll be providing a lot more info and releasing all of the Workshop EXEC scripts I created to automate the build process once I get back from VCF.


I also had to make changes to some of the source files (and had to create a couple new ones), but I'm not sure that I can share those thanks to Apple's license agreement. So I might just have to publish a list of the changes that you have to make, and then other people would have to patch their sets of files manually. Really, the most optimal way to share all my progress would be to provide a ready-to-go disk image with all the source files and build scripts in place, where the user could just run a build script and be all set, but the license stuff seems to prohibit this sort of thing.


If anyone knows of any ways to share both the code and build scripts without violating the license, I'd love to hear them!

blusnowkitty

I think you could get away with distributing xdelta or diff patches... That's how ROM hackers tend to usually escape Nintendo's ire, anyway.
You haven't lived until you've heard the sound of a Sony 400k drive.

sigma7

Quote from: AlexTheCat123 on June 16, 2025, 02:09:07 PM
I'm happy to announce that I'm finally done!

Wow, that's most excellent news! Congrats and what a fantastic contribution!

Perhaps Al Kossow has some suggestions for a good way to post updated code within the terms of the license agreement...
Warning: Memory errors found. ECC non-functional. Verify comments if accuracy is important to you.

stepleton

Congratulations! You know I'll watch that talk the minute it goes up!

fri0701

This is amazing! I dove into the code recently to work towards the same goal, and learned a lot in the process. I can imagine how much work it took!

I'm very curious to see your presentation when it comes to YouTube, and hopefully you can find a license-appropriate way to share your work so we can all check it out.  :)

AlexTheCat123

Quote from: blusnowkitty on June 16, 2025, 04:38:00 PM
I think you could get away with distributing xdelta or diff patches...


Hmm, that's a good idea. I'll definitely look into it!


Quote from: sigma7 on June 16, 2025, 04:38:45 PM
Wow, that's most excellent news! Congrats and what a fantastic contribution!

Perhaps Al Kossow has some suggestions for a good way to post updated code within the terms of the license agreement...


Thanks James! And that's another good idea; maybe Al can comment here if he has any ideas.


Quote from: stepleton on June 16, 2025, 05:00:02 PM
Congratulations! You know I'll watch that talk the minute it goes up!
Quote from: fri0701 on June 16, 2025, 06:24:59 PM
This is amazing! I dove into the code recently to work towards the same goal, and learned a lot in the process. I can imagine how much work it took!

I'm very curious to see your presentation when it comes to YouTube, and hopefully you can find a license-appropriate way to share your work so we can all check it out.  :)


Thank you both!


@fri0701 I saw your thread a month ago about the awesome utility you wrote to get source files into LOS disk images, and I think that should help with the problem of not being able to provide a ready-made disk image to a certain extent too. I transferred all the files one by one over serial at 1200 baud, which takes forever and isn't practical, but a utility that can do it all in seconds is a much more convenient solution.

stepleton

Quote from: AlexTheCat123 on June 16, 2025, 09:22:13 PMI transferred all the files one by one over serial at 1200 baud, which takes forever and isn't practical

Does this involve transferring every file separately? As in, within the Workshop transfer application, you say "Save to file" or whatever it is, type out the name of the file, push the file data from the other end of the link, then tell the Workshop application that the file is done? If so, that's an incredibly repetitive process for hundreds of files!

AlexTheCat123

Quote from: stepleton on June 17, 2025, 04:11:54 AM
Does this involve transferring every file separately? As in, within the Workshop transfer application, you say "Save to file" or whatever it is, type out the name of the file, push the file data from the other end of the link, then tell the Workshop application that the file is done? If so, that's an incredibly repetitive process for hundreds of files!


Yes, that's exactly how I had to do it. I really should've written a program to pack all the files, transfer them as one, and then unpack them on the Lisa end or something, but for some reason I thought that this would be quicker. It was NOT fun in the slightest!

bmwcyclist

Using my LISA for writing blogs and other work projects and fun and games at home.
LISA 2/10, AST RAM board, ESProfile, FloppyEMU, reproduction LISA 1 mouse, BlueSCSI

D.Finni

Quote from: AlexTheCat123 on June 17, 2025, 07:53:04 AM
Quote from: stepleton on June 17, 2025, 04:11:54 AM
Does this involve transferring every file separately? As in, within the Workshop transfer application, you say "Save to file" or whatever it is, type out the name of the file, push the file data from the other end of the link, then tell the Workshop application that the file is done? If so, that's an incredibly repetitive process for hundreds of files!


Yes, that's exactly how I had to do it. I really should've written a program to pack all the files, transfer them as one, and then unpack them on the Lisa end or something, but for some reason I thought that this would be quicker. It was NOT fun in the slightest!

So you have paid the real cost of this "free" source release: your time.  8)

AlexTheCat123

Quote from: D.Finni on June 18, 2025, 12:24:08 PM
So you have paid the real cost of this "free" source release: your time.  8)


A whole, whole lot of time!

bmwcyclist

#11
Fantastic presentation!

Packed house with 2 rooms full of participants.

Made my trip from Cincinnati worth it!

People were talking about it in the hallways for half an hour and might still be.


Amazing work!!!!!
Using my LISA for writing blogs and other work projects and fun and games at home.
LISA 2/10, AST RAM board, ESProfile, FloppyEMU, reproduction LISA 1 mouse, BlueSCSI

stepleton

I'm gonna keep my eyes peeled, but in case anyone has a link to the recording and nobody has posted it yet --- please share!

AlexTheCat123

#13
Okay, the video just went up!

https://www.youtube.com/watch?v=X0btMjXEXgc


As I think I mentioned earlier, I won't be back home until late this week, so give me a bit of time to actually get the build scripts and necessary code modifications prepared and uploaded. But I hope to have them ready by mid to late next week!

ried