LisaList2

Advanced search  

News:

2022.06.03 added links to LisaList1 and LisaFAQ to the General Category

Pages: 1 [2] 3 4   Go Down

Author Topic: Lisa OS and applications source code now available  (Read 14367 times)

stepleton

  • Sr. Member
  • ****
  • Karma: +109/-0
  • Offline Offline
  • Posts: 384
Re: Lisa OS and applications source code now available
« Reply #15 on: January 19, 2023, 05:42:28 pm »

Worth noting that the ToolKit documentation talks about being able to switch to the screen with that debug output --- IIRC with the help of an extra menu that pops up for suitably compiled programs or something like that. I remember thinking that the debugging facilities for ToolKit programs sounded considerably more powerful than I'd expected.
Logged

andrew

  • Sr. Member
  • ****
  • Karma: +10/-0
  • Offline Offline
  • Posts: 60
  • :)
    • Lisa themed website (under construction)
Re: Lisa OS and applications source code now available
« Reply #16 on: January 19, 2023, 06:34:08 pm »

More worryingly, it looks like every single piece of code - OS, drivers, LisaDesk/Filer, Lisa applications - just dumps loads of debug WRITELNs (pascal's printf?) to the secondary screen whenever anything happens, and none of it appears to be #ifdef'd out. Maybe that's another reason why the Office System is so slow, every time you click the mouse button it prints a debug statement to the debug screen!

How much faster do you think an optimized Office System 3.2 would end up being just from that alone? There must be other fixes and optimizations just waiting to be discovered here.
Logged

kgraaf

  • Newbie
  • *
  • Karma: +1/-0
  • Offline Offline
  • Posts: 8
Re: Lisa OS and applications source code now available
« Reply #17 on: January 21, 2023, 06:46:30 am »

I have two questions:

1. Did the dump include the Pascal Workshop and/or any of the compilers? If not, what are we missing?

2. Do we have enough to do a fresh build of the OS? I would be more than happy to work on an Office System 4 release if anyone's interested in that. (Stuff like Y2K support would be nice, as I recall the Office System doesn't have it)
Logged

stepleton

  • Sr. Member
  • ****
  • Karma: +109/-0
  • Offline Offline
  • Posts: 384
Re: Lisa OS and applications source code now available
« Reply #18 on: January 21, 2023, 08:58:32 am »

1. I don't think so, but Al Kossow found some related bits and mentioned them in this thread: https://lisalist2.com/index.php/topic,348.15.html

I haven't looked too closely at what's in some of the shared archives, but I wouldn't be surprised if creature comforts like the Workshop shell and the editor are missing. I'm not sure whether the code generator, linker, or assembler are there either, not to mention various libraries.

2. This is unknown! But I think lots of folks would love to find out if it's possible.
Logged

Al Kossow

  • Sr. Member
  • ****
  • Karma: +34/-0
  • Offline Offline
  • Posts: 73
Re: Lisa OS and applications source code now available
« Reply #19 on: January 21, 2023, 01:53:34 pm »

There are no Workshop components other than the toolkit 3.0 sources in what was released.

Also, I pushed out the rest of what I have on Lisa 1.75 this morning. It looks like the project was
abandoned when Pepsi started and Twiggies were killed. The Pepsi codename obviously comes from Sculley
who started Apr, 1983
« Last Edit: January 21, 2023, 01:57:06 pm by Al Kossow »
Logged

blusnowkitty

  • Sr. Member
  • ****
  • Karma: +69/-0
  • Offline Offline
  • Posts: 244
Re: Lisa OS and applications source code now available
« Reply #20 on: January 21, 2023, 05:26:22 pm »

Honestly, I think the source code drop might be more useful as a tool for a C rewrite. The Workshop is so difficult to use, and who even understands Pascal anymore? With the supporting LisaEm tools I think it'd be feasible to do a C rewrite targeting gcc/llvm; maybe keep the assembly bits as they are since they're going to be the most optimized bits of code we have.
Logged
You haven't lived until you've heard the sound of a Sony 400k drive.

stepleton

  • Sr. Member
  • ****
  • Karma: +109/-0
  • Offline Offline
  • Posts: 384
Re: Lisa OS and applications source code now available
« Reply #21 on: January 22, 2023, 12:04:55 pm »

who even understands Pascal anymore?

Hey now!

Pascal is not a very complicated language: there are not very many language constructs to know about, and the language was made with clarity in mind, to the point where the programmer (in my very limited experience) sometimes wishes they could be more subtle but has no option for it. I think a relatively experienced coder could be pretty much ready to go with Pascal in a couple of days.

I would expect the job of learning Lisa OS interfaces and concepts to be about the same in any language.

None of this is to say that an rewrite targeting GCC/LLVM wouldn't be amazing (I think you'd need a custom backend to do Lisa-specific things like the TST.W trick before allocating space on the stack). But I guess if I had to bet on the one thing that would accelerate Lisa development based on this source code at this stage, it's finding a way to host the files on a modern computer and treat an encapsulated LisaEm instance there as a build system/compiler: if you want to build a new OS, you start some kind of LisaEm+workshop container (running at 160x or whatever) that compiles the source, writes the output back to the modern computer (or to a disk image), and shuts down.
Logged

Al Kossow

  • Sr. Member
  • ****
  • Karma: +34/-0
  • Offline Offline
  • Posts: 73
Re: Lisa OS and applications source code now available
« Reply #22 on: January 22, 2023, 02:56:00 pm »

I had hoped MAME would have been farther along by now than it is, because of the integrated debugger.
Pretty much everything is known, albeit very scattered on the runtime system to bootstrap a different shell in place of the one in the workshop or to rewire the I/O system to pipe it out to a system running the emulator.

Also, the sources to lisabug are up (sort of) as part of the things I just put up for the YACC
http://bitsavers.org/pdf/apple/mac/prototypes/1985_YACC
 
Logged

Al Kossow

  • Sr. Member
  • ****
  • Karma: +34/-0
  • Offline Offline
  • Posts: 73
Re: Lisa OS and applications source code now available
« Reply #23 on: January 22, 2023, 03:07:17 pm »

Something fun to do would be an intelligent network card that had the whole IP stack on it and wire it into the OS with a remote procedure library. Something a little more sophisticated than the Unibone for PDP-11 computers.
« Last Edit: January 22, 2023, 03:10:21 pm by Al Kossow »
Logged

kgraaf

  • Newbie
  • *
  • Karma: +1/-0
  • Offline Offline
  • Posts: 8
Re: Lisa OS and applications source code now available
« Reply #24 on: January 22, 2023, 03:10:23 pm »

There are no Workshop components other than the toolkit 3.0 sources in what was released.

Al, any chance we'll ever get Workshop and/or compiler source releases? I'm incredibly grateful for all your hard work in securing what we have, make no mistake!




Re: Pascal. Some people on here might not be aware, but the excellent FreePascal compiler has a Mac Pascal compatibility mode. I've been exploring the possibility of "porting" LisaOS to a new abstraction layer (would require a rewrite of QuickDraw and other assembly-written portions of course) that could run as an application on Linux or something like that.
Logged

stepleton

  • Sr. Member
  • ****
  • Karma: +109/-0
  • Offline Offline
  • Posts: 384
Re: Lisa OS and applications source code now available
« Reply #25 on: January 22, 2023, 03:58:31 pm »

Re: Pascal. Some people on here might not be aware, but the excellent FreePascal compiler has a Mac Pascal compatibility mode. I've been exploring the possibility of "porting" LisaOS to a new abstraction layer (would require a rewrite of QuickDraw and other assembly-written portions of course) that could run as an application on Linux or something like that.

Something like this was actually the reason I wrote the Clascal grammar for the compiler project I mentioned elsewhere --- instead of aiming for binary compatibility, I was wondering if it might be possible to achieve source compatibility for ToolKit apps that would compile to Python.

The python code itself wouldn't aim to be usable in other Python applications: instead, the Python interpreter would behave like an extremely CISCy microprocessor, with compiled subroutines/objects/methods using a large array of bytes (a megabyte or two) as a stand-in for the Lisa's RAM. Pointers would work in this scheme: they'd just be array indices. Integers in the array would be stored in the "RAM" in big-endian order, just like in the Lisa: in fact, the idea would be to try to store all user-defined "stack" and "heap" data in the same way that the Lisa would store them.

The hope is that this would be a development aid for people who wanted to write new ToolKit applications (for you see I would have written a runtime that recreated the ToolKit as well): if it compiled and worked under this system, then you could be reasonably confident in it compiling and working on the real Lisa.

Naturally this would have been a huge undertaking, but the pandemic had not been going for very long by then and who knew how long we were going to be cooped up at home? Anyway, we got as far as the parser.
Logged

kgraaf

  • Newbie
  • *
  • Karma: +1/-0
  • Offline Offline
  • Posts: 8
Re: Lisa OS and applications source code now available
« Reply #26 on: January 22, 2023, 04:06:31 pm »

Yeah for sure. I think the fact that we have access to the source now means that trying to get it work under FreePascal would be the way to go. I would be, if nothing else, a very neat hack to have 40 year old code running as a native application on a modern OS. I am reasonably certain that Clascal should compile under MacPas mode with FreePascal. The harder part is doing e.g. the QuickDraw rewrite.
Logged

Al Kossow

  • Sr. Member
  • ****
  • Karma: +34/-0
  • Offline Offline
  • Posts: 73
Re: Lisa OS and applications source code now available
« Reply #27 on: January 22, 2023, 04:12:03 pm »

Al, any chance we'll ever get Workshop and/or compiler source releases?

I found the pascal compiler source on some floppies I had along with a few other things.
http://bitsavers.org/pdf/pascal_monitor/floppy

I'm waiting to see what happens in the future WRT Apple and future code releases.
Lisa was a much bigger deal than the previous code drops and there hasn't been any
official reaction from Apple. I'm hoping to be able to talk to some people in person
at the CHM event on the 31st.

One of the important things to think about is what is going to be done with this code.
If people just carve it up or publish fgreps of how many times 'fuck' appears in it
it is going to be really hard to justify why they should release more.
« Last Edit: January 22, 2023, 04:20:10 pm by Al Kossow »
Logged

Al Kossow

  • Sr. Member
  • ****
  • Karma: +34/-0
  • Offline Offline
  • Posts: 73
Re: Lisa OS and applications source code now available
« Reply #28 on: January 22, 2023, 04:15:00 pm »

Yeah for sure. I think the fact that we have access to the source now means that trying to get it work under FreePascal would be the way to go.

The point was getting a historical artifact of a complete operating system and applications in source form, not doing some Frankenstein hack to reanimate it on another system in 2023.

I wrote a post that they decided not to run on the 19th coming out on the 24th that explains this.

Personally, I'm disappointed that so far no one has started to make a bugfix list. As far as I know, no one
has said that source patches couldn't be released.
« Last Edit: January 22, 2023, 04:22:32 pm by Al Kossow »
Logged

compu_85

  • Sr. Member
  • ****
  • Karma: +66/-0
  • Offline Offline
  • Posts: 233
Re: Lisa OS and applications source code now available
« Reply #29 on: January 22, 2023, 05:01:53 pm »

Well, doesn't the license say we aren't allowed to discuss or distribute any patches made?   :o

I'd love for my understanding to be wrong on this.

If we wanted to start a bug fix / feature request list, would a Google sheet be appropriate?

-J
Logged
Pages: 1 [2] 3 4   Go Up