This page is hosted by SourceForge: see also the Project and Statistics pages. |
The ucsd-psystem-vm package is a portable virtual machine for the UCSD p-System. [ Download | Aegis Repo ] |
![]() You could support this project with a donation. |
About This ProjectThe ucsd-psystem-vm project is a portable virtual machine (p-code interpreter) for the UCSD p-System. It supports execution of Apple ][ Pascal programs, it can even display TurtleGraphics using X11.This is a re-packaging of the excellent p-interp program by Mario Klebsch. Disk Images![]() The ucsd-psystem-os project's Download page has a number of links to the sources for different UCSD p-System versions. |
Ancient HistoryThe UCSD p-System is a portable operating system that was popular in the early days of personal computers, in the late 1970s and early 1980s.Like today's Java, it was based on a “virtual machine” with a standard set of low level, machine language like “p-code” instructions that were emulated on different hardware, including the 6502, the 8080, the Z-80, and the PDP-11. In this way, a Pascal compiler that emitted p-code executables could produce a program that could be run under the p-System on an Apple II, a Xerox 820, or a DEC PDP-11. The most popular language for the p-System was UCSD Pascal. In fact, the p-System operating system itself was written in UCSD Pascal, making the entire operating system relatively easy to port between platforms. By writing a p-code interpreter in the platform's native assembly language, and a few minimal hooks to operating system functions for the file system and interacting with the user, you could move a p-code executable from another system and run it on the new platform. In this way, the p-code generated on one computer could be used to bootstrap the port of the p-System to another computer. From the Jefferson Computer Museum web site. | ||||||||
See Also
|
Sister Projects
|
| The ucsd-psystem-vm package is freely distributable under the terms and conditions of the GNU GPL. |
![]() |
There is more Software by Peter Miller at his home page. |
![]() |