LisaList2

Advanced search  

News:

2022.06.03 added links to LisaList1 and LisaFAQ to the General Category

Pages: [1]   Go Down

Author Topic: How to start Smalltalk-80 on a Lisa 1  (Read 5131 times)

stepleton

  • Sr. Member
  • ****
  • Karma: +109/-0
  • Offline Offline
  • Posts: 384
How to start Smalltalk-80 on a Lisa 1
« on: June 20, 2021, 01:31:59 pm »

I mentioned maybe around a year ago that I would share more information on how to run the copy of Smalltalk-80 on Bitsavers on a Lisa (Lisa 1 required for now; the disk images are for Twiggy disks). I forgot to do that, but hopefully better late than never.

1. Boot the Lisa into Monitor version 11.6. (Even though the disk image is called 11.8, the version string shown on the command line is 11.6; not sure which is accurate.) Note that Monitor 12.x will not work.

2. Type F for F(ile.

3. Insert your Smalltalk twiggy into the other Twiggy drive.

4. Type P for P(rfx.

5. At the "Prefix titles by what vol ?" prompt, type "DIAG:" (no quotes) and press return.

6. Type Q for Q(uit.

7. Type X for X(ecute

8. At "What file ?" type "smalltalk" and press return. You should see

Code: [Select]
Running...
Object file BCI.OBJ loaded at 146310.
Symbols for BCI loaded at 141394.
Hit <Return> to execute Smalltalk-80.

9. So do that, hit return. Now you have a wait ahead of you as the computer loads an entire Smalltalk image into RAM. This occupies most of the Smalltalk disk in a contiguous block spanning both sides of the disk, so if your drive is not in good working order, this is one way to find out. Read errors cause the Lisa to crash.

10. Otherwise, you should see this: https://photos.app.goo.gl/hyWw4GWzN2sj3W596 . Note that loading continues for some time after the screen is loaded from disk.

Once loaded, it is helpful to know that this Smalltalk was designed for computers with three-button mice. The buttons were identified by colour. The "red button" is your ordinary Lisa mouse button. The "yellow button" is the Apple key and the "blue button" is either option key.

Anyway, from here you are on your own; I don't know enough about Smalltalk to offer further guidance. It's very slow, so you will need to be patient! If you get lost or stuck, it's no big deal --- the Monitor doesn't need to be "shut down" I don't think, and Smalltalk only makes changes to RAM unless you quit out of it. (In which case I believe it dumps the entire image back to disk. I haven't tried it, though.)
Logged

stepleton

  • Sr. Member
  • ****
  • Karma: +109/-0
  • Offline Offline
  • Posts: 384
Re: How to start Smalltalk-80 on a Lisa 1
« Reply #1 on: June 20, 2021, 01:47:09 pm »

Might be worth adding that I think it's pretty likely that this Smalltalk is the implementation described in the paper "An MC68000-Based Smalltalk-80 System" from Smalltalk-80: Bits of History, Words of Advice (1983), pp. 175-187 (PDF pages 183-195), or maybe a descendant of that system.

The book would have been compiled in '82 or early '83, I think, and so it's maybe unsurprising that the paper mentions that it makes use of "a series of experimental Motorola MC68000-based computer systems" --- I presume that the paper's authors didn't want to tip people off about Lisa at the time.
Logged

rayarachelian

  • Administrator
  • Hero Member
  • *****
  • Karma: +101/-0
  • Offline Offline
  • Posts: 772
  • writing the code,writing the code,writing the code
    • LisaEm
Re: How to start Smalltalk-80 on a Lisa 1
« Reply #2 on: June 20, 2021, 02:45:42 pm »

Excellent!
Logged
You don't know what it's like, you don't have a clue, if you did you'd find yourselves doing the same thing, too, Writing the code, Writing the code

compu_85

  • Sr. Member
  • ****
  • Karma: +66/-0
  • Offline Offline
  • Posts: 233
Re: How to start Smalltalk-80 on a Lisa 1
« Reply #3 on: August 28, 2023, 08:45:57 am »

The original link to the paper is dead, however the WayBack machine has it:

https://web.archive.org/web/20150224220359/http://sdmeta.gforge.inria.fr/FreeBooks/BitsOfHistory/BitsOfHistory.pdf

"Rick Meyers and Dave Casseres of Apple Computer provide an interesting set of analyses of their MC68000-based implementation.
Copyright Apple Computer Inc., 1982. All rights reserved."

Quote
Apple Computer began its Smalltalk-80 research project in early October 1980. The project has been staffed by one engineer (Rick Meyers) and, for about half of the last 18 months, by a technical writer (David Casseres). Apple has consistently viewed Smalltalk as a research effort, and has afforded the project the freedom from schedules and from marketing considerations that allows research efforts to thrive.
Our Smalltalk-80 implementation has been running since April 1981 on a series of experimental Motorola MC68000-based computer systems. The Smalltalk-80 virtual machine described in this paper is a straightforward translation of the Xerox virtual machine specification to 68000 assembly language.

Quote
Performance measurements are included here to allow comparisons with other Smalltalk-80 implementations. These measurements were made on a single-user Motorola MC68000-based system with the system clock running at 5 MHz. (A 4-byte register-to-register add takes 1.6 microseconds. A 4-byte move from an absolute memory location to a register takes 3.2 microseconds. CPU memory accesses and display memory accesses are synchronized, slowing the CPU by 10-15%). The measurements are a snapshot of work in progress as of July 1982.

The dates on this are interesting to me. Job's / Apple's Visit to PARC was in december 1979. It sounds like as soon as there was some viable Lisa hardware Meyers started working at getting Smalltalk to run on it.

-J
Logged

compu_85

  • Sr. Member
  • ****
  • Karma: +66/-0
  • Offline Offline
  • Posts: 233
Re: How to start Smalltalk-80 on a Lisa 1
« Reply #4 on: August 28, 2023, 09:09:55 pm »

FWIW, here's Rick's Linkedin. https://www.linkedin.com/in/rick-meyers-26a53a/ He mentions getting Smalltalk going on the Lisa!

Quote
Engineer / Engineering Manager
Apple Computer
1980 - 1991  - 11 Years
Cupertino, CA
Implemented drivers for Lisa's keyboards, mouse, display, cursor, speaker, clocks, and calendar. Working with Bill Atkinson, helped develop Apple's vision for tablet systems. Implemented Smalltalk on Lisa and Macintosh. Led the design and development of MPW (Macintosh Programmer's Workshop) from initial conception through delivery of MPW 1.0. Proposed Apple's investment in compiler technology. Built a team of talented compiler engineers. Led the design and development of a family of portable, re-targetable, optimizing compilers written in C++ using object-oriented design and implementation techniques. Moved this project to Taligent at Apple's request.
Logged

wmeyers12

  • Newbie
  • *
  • Karma: +3/-0
  • Offline Offline
  • Posts: 1
Re: How to start Smalltalk-80 on a Lisa 1
« Reply #5 on: November 09, 2023, 08:39:55 pm »

Hey all,

I am Rick Meyers' son and I stumbled on this thread so I thought I would chime in with a few tidbits in case anyone is interested.

My dad first saw smalltalk in 1975 when they did a demo at UC Berkeley and it blew him away. He hoped to work with Smalltalk implementation at HP in 1980, where he had been previously hired by John Couch, but was turned down by management. My dad was lamenting to Couch (who had already left for Apple by then) that HP turned him down, and Couch offered to bring him over to Apple to work on smalltalk (Larry Tesler from Xerox and then Apple was also involved with his hiring). He joined Apple in 1980. HP eventually worked on smalltalk implementation but later on.

He had smalltalk running in late 1981 on very early Lisa prototypes.  He wrote his chapter on implementation that was linked in 81 as well. Stepleton is correct that he had to be vague to tip off as little as possible about Lisa.

He reused code he developed for Smalltalk to build the drivers (mouse, cursor, keyboard, clocks, calendars, etc) for both Lisa and Mac.

As a side note, in after Mac was released he worked for about a year in secret at Bill Atkinsons' house on visions for a tablet for Apple. He still has two of the early concept prototypes (printed home screen concepts framed in glass with a drywall core to simulate hardware weight). I believe this was in 1985.

Logged

stepleton

  • Sr. Member
  • ****
  • Karma: +109/-0
  • Offline Offline
  • Posts: 384
Re: How to start Smalltalk-80 on a Lisa 1
« Reply #6 on: November 10, 2023, 01:37:35 pm »

Welcome! And fascinating to learn that low-level driver code was in Smalltalk first... to say nothing of those tablets and all of the other things he's done. Thanks for the message!
Logged

Jacexpo

  • Newbie
  • *
  • Karma: +1/-0
  • Offline Offline
  • Posts: 3
Re: How to start Smalltalk-80 on a Lisa 1
« Reply #7 on: December 03, 2023, 07:48:18 pm »

Thank you for coming to share this with us. Very interesting indeed!
Logged
Pages: [1]   Go Up