Skip to content

pablomarx/Smalltalk76

Repository files navigation

Smalltalk 76

These sources were recovered from xmsmall.dsk. The following steps were performed using the Contralto emulator:

  1. Copy xmsmall.dsk to blank.dsk
  2. In Contralto, insert blank.dsk in disk pack 0.
  3. Boot the system
  4. In the Alto Executive, execute: delete Smalltalk.Sources.5.5k xmsmall.boot
  5. Restart Contralto, inserting xmsmall.dsk in disk pack 0, blank.dsk in disk pack 1.
  6. Boot the system
  7. In the Alto Executive, execute resume xmsmall.boot
  8. Once the Smalltalk UI appears, use the System Browser.
  9. In System Browser's left-most column, select Sets and Dictionaries
  10. In the second column, select SystemOrganizer
  11. In the third column, select Filout and printing
  12. In the fourth column, select printAll
  13. In the bottom pane, replace:
  • printAll with filoutAll
  • printCategory with filoutCategory
  1. Middle click in the bottom pane, and select Compile. A new method, filoutAll should appear in the fourth column.
  2. In the fourth column, select filoutCategory:
  3. In the bottom pane, replace dp0 with dp1
  4. Middle click in the bottom pane, and select Compile
  5. In the bottom pane, type SystemOrganization filoutAll
  6. Select the text SystemOrganization filoutAll
  7. Middle click the text selection, and select Do it
  8. As each category is written to disk, it will appear in the upper left hand corner of the screen in the UserView. This process will take some time.
  9. Once completed, stop Contralto.
  10. Use aar to extract the files from blank.dsk. e.g. aar x blank.dsk
  11. Use dd to fix the byte ordering in the files. e.g. for f in *.st; do dd if=$f of=$f.tmp conv=swab; mv $f.tmp $f; done
  12. At this stage, the files should resemble the first commit in this repo.
  13. restore_alto_files can be used to generate HTML from these files.
  14. Replace the low ASCII characters with variants modern OSes can use via:
perl -pi -e 's/\x01/≤/g' *.st
perl -pi -e 's/\x03/⦂/g' *.st
perl -pi -e 's/\x06/≡/g' *.st
perl -pi -e 's/\x07/◦/g' *.st
perl -pi -e 's/\x0e/≠/g' *.st
perl -pi -e 's/\x0f/↪/g' *.st
perl -pi -e 's/\x11/⇑/g' *.st
perl -pi -e 's/\x12/≥/g' *.st
perl -pi -e 's/\x13/ⓢ/g' *.st
perl -pi -e 's/\x15/¬/g' *.st
perl -pi -e 's/\x16/∢/g' *.st
perl -pi -e 's/\x17/⌾/g' *.st
perl -pi -e 's/\x18/▱/g' *.st
perl -pi -e 's/\x19/➲/g' *.st
perl -pi -e 's/\x1b/⇒/g' *.st
perl -pi -e 's/_/←/g' *.st

About

From Smalltalk 5.5k XM November 24 on 22 November 1980 at 2:57:08 am.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published