General Category > Building LOS From Source
New PACKSEG Implementation For The Workshop
AlexTheCat123:
Wow, it really does look like the original PACKSEG.OBJ is on there! How cool is that? Thanks @ried for those disk images! I guess all that work was for nothing...
Let me try and see if I can get LisaEm to work with Twiggies one last time. I've got to test that executable and see if it's good!
AlexTheCat123:
Sure enough, that's the original PACKSEG. And after tinkering around in LisaEm a bit, I was able to test it and it actually works!
Well, it works under that beta version of the Workshop at least. Unfortunately PACKSEG doesn't work under LOS 3 because it relies on some intrinsic units that were present in the beta and not in the Spring release.
So I guess my efforts weren't for nothing after all. I'll keep on working to get my version finished. But regardless, it's really cool to have a copy of the original!
ried:
Huzzah! I love it when a plan comes together. Cheers.
AlexTheCat123:
An interesting thing that I somehow didn't discover until now: the Linker can't link a program with a packed intrinsic library file!
Of course, you can execute a program with a packed library after linking, but the linker has no idea how to read a packed library and will give an error if you try.
It turns out that, when you install LOS, it copies over packed copies of all the intrinsic libraries (IOSPASLIB, IOSFPLIB, SYS1LIB, SYS2LIB, QPLIB, TKLIB, TK2LIB, and so on). But then, when you go to install the Workshop, it replaces them all with unpacked versions so that you can link properly. This is why the Workshop installer is 6 disks instead of LOS's 5; the unpacked libraries take up some extra space.
Make sure not to install LOS back on top of the Workshop, or else it'll replace all of them with the packed versions again!
Regardless of whether you're installing LOS or the Workshop, the files on the first install disk must be packed, because there isn't room for all the necessary boot files otherwise.
And a progress update: I've finished writing PACKSEG at this point, and I'm just doing some stress testing and updating the build scripts to utilize it now. It takes about an hour to pack all the necessary files.
AlexTheCat123:
Okay, it's all done and up on Github! The new LOS Compilation Base.image comes with the updated versions of all the scripts and the PACKSEG executable, but if you've already transferred all the source files over and want to update your existing LOS Compilation Base.image, then you just need to copy over the following files:
ALEX/ASM/LIBHW.TEXT
ALEX/ASM/LIBPL.TEXT
ALEX/MAKE/ALL.TEXT
ALEX/MAKE/APCL.TEXT
ALEX/MAKE/APHP.TEXT
ALEX/MAKE/APIM.TEXT
ALEX/MAKE/APIMDISK.TEXT
ALEX/MAKE/APPW.TEXT
ALEX/MAKE/DISK1.TEXT
ALEX/MAKE/DISK2.TEXT
ALEX/MAKE/DISK3.TEXT
ALEX/MAKE/DISK4.TEXT
ALEX/MAKE/DISK5.TEXT
ALEX/MAKE/DISKS.TEXT
ALEX/PACKSEG.TEXT
BUILD/PACKSEG.TEXT
ALEX/MAKE/ALL_NODISKS.TEXT
ALEX/MAKE/PACKSEG.TEXT
ALEX/PACK/OFFICE.TEXT
I've also updated lisa_serial_transfer.py to fix a minor bug, as well as patch_files.py to adjust its behavior on the Calculator, Clock, and Preferences now that we're making install disks. So if you've already copied the source code over to your Lisa, run patch_files on a fresh copy of the code and transfer the APHP, APCL, and APPW directories to replace whatever's currently on your Lisa!
Note that ALEX/MAKE/ALL_NODISKS.TEXT replaces ALEX/MAKE/ALL_NOFLOP.TEXT for the sake of increased clarity in the filenames. But now that we have PACKSEG, you can also run ALEX/MAKE/ALL.TEXT to build everything complete with install and LisaGuide disks!
Once you've built everything, you can make a set of all 5 install disks at any time by running ALEX/MAKE/DISKS.TEXT (or ALEX/MAKE/INSTALLER.TEXT if you want to rebuild the installer too). Individual disks can be made using ALEX/MAKE/DISKn.TEXT, where n is the disk number from 1 to 5.
To make a new LisaGuide disk, just run ALEX/MAKE/APIMDISK.TEXT.
Enjoy, and let me know if you encounter any problems!
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version