| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| ns32ksoft [2022/05/12 09:19] – admin | ns32ksoft [2026/06/03 14:20] (current) – admin |
|---|
| <html><h1>Software packages for 32000 series</h1></html> | <html><h1>Software packages for 32000 series</h1></html> |
| Author: Alexander Voropai alec@sensi.org\\ | Author: Alexander Voropai alec@sensi.org\\ |
| Aug 2017\\ | Aug 2017 .. Jun 2022\\ |
| This page was created as a "companion" article for this amazing site: http://www.cpu-ns32k.net\\ | This page was created as a "companion" article for this amazing site: http://www.cpu-ns32k.net\\ |
| For the GNU Toolchains for 32000 series see a separate page: [[ns32ktoolchain]] | For the GNU Toolchains for 32000 series see a separate page: [[ns32ktoolchain]] |
| |
| ==== Definicon ==== | ==== Definicon ==== |
| Definicon DSI-32 was an "coprocessor" ISA-8 board with NS32032 CPU designed to run a "heavy" match tasks. | Definicon DSI-32 was a "coprocessor" 8-bit ISA bus board with NS32032 CPU designed to run "heavy" math tasks. |
| |
| See a Byte Magazine articles:\\ | See Byte Magazine articles:\\ |
| https://archive.org/details/BYTE_Vol_10-08_1985-08_The_Amiga\\ | https://archive.org/details/BYTE_Vol_10-08_1985-08_The_Amiga\\ |
| p. 120 The DSI-32 Coprocessor Board. Part 1: The Hardware\\ | p. 120 The DSI-32 Coprocessor Board. Part 1: The Hardware\\ |
| === DSI-32 Software === | === DSI-32 Software === |
| 1) http://user.berklix.org/~dlr/dsi/set021387/\\ | 1) http://user.berklix.org/~dlr/dsi/set021387/\\ |
| This is a complete Definicon software set. Includes GreenHills C (K&R only), Fortran and Pascal compilers. Filenames are in mixed case. An assembler is made by the Computer Systems Design (Perth, Western Australia) and language compilers are from the Green Hills Software. Assembler is quite powerful and supports **module** concept for the 32000 (unlike many other assemblers including GAS). Also two alternative assemblers included. Object module format is proprietary. Executables ''*.e32'' are in an ''a.out'' variant (loader sources is available in the LOAD sources). | This is a complete Definicon software set. Includes GreenHills C (K&R only), Fortran and Pascal compilers. Filenames are in mixed case. An assembler was developed by Computer Systems Design (Perth, Western Australia) and language compilers are from Green Hills Software. The assembler is quite powerful and supports the **module** concept for the 32000 (unlike many other assemblers including ''gas''). There are also two alternative assemblers (included). Object module format is proprietary. Executables have a suffix ''*.e32'' and this is an ''a.out'' variant (loader sources is available in the LOAD sources). |
| |
| <code>CSD-32000 Assembler V1.00a, Computer Systems Design | <code>CSD-32000 Assembler V1.00a, Computer Systems Design |
| Documentation: http://cpu-ns32k.net/files/docs.zip | Documentation: http://cpu-ns32k.net/files/docs.zip |
| |
| This ''C'' compiler (was tested under emulator) is trying to include a "system" HOST header files from the ''/usr/include''. This does not work because of non-K&R syntax and complexity of the modern headers. Use a "local" header files (in double quotes) ''#include "stdio.h"'' in your sources.\\ (TODO: Make a "fake root" in emulator ?) | This ''C'' compiler (was tested under emulator) is trying to include "system" HOST header files from the ''/usr/include''. This does not work because of non-K&R syntax and complexity of the modern headers. Use "local" header files (in double quotes) ''#include "stdio.h"'' in your sources.\\ (TODO: Make a "fake root" in the emulator ?) |
| C Compiler options: [[dsi32-copt]] | C Compiler options: [[dsi32-copt]] . TODO: change emulator to "virtual" directory (?). |
| |
| ''ln'' linker uses unusual syntax. It requires a special "definition file" (slightly similar to "response file" for a Microsoft's linker). Software distribution provides sample files with ''def'' or ''d32'' extension.\\ | ''ln'' linker has unusual syntax. It requires a special "definition file" (slightly similar to the "response file" for a Microsoft's linker). Software distribution provides sample files with ''def'' or ''d32'' extension.\\ |
| LN users manual: http://cpu-ns32k.net/files/LN_user_manual.pdf | LN users manual: http://cpu-ns32k.net/files/LN_user_manual.pdf |
| |
| === Emulator === | === Emulator === |
| As it is clear, Definicon software requires a real DSI-32 card with real 32000 CPU installed in a PC. Fortunately, in 2016 Dave Rand wrote an **DSI-32 emulator** using a 32016 software emulator from the Acorn 32016 Tube Coprocessor Board project:\\ | As it is clear, Definicon software requires a real DSI-32 card with a real 32000 CPU installed in a PC. Fortunately, in 2016 Dave Rand wrote a **DSI-32 emulator** using a 32016 software emulator from the Acorn 32016 Tube Coprocessor Board project:\\ |
| https://github.com/hoglet67/PiTubeClient\\ | https://github.com/hoglet67/PiTubeClient\\ |
| https://github.com/hoglet67/PiTubeDirect | https://github.com/hoglet67/PiTubeDirect |
| |
| I did a slightly improved version:\\ | I did a slightly improved version:\\ |
| - Renamed emulator executable file to "load" to conform DSI-32 name loader\\ | - Renamed the emulator executable file to "load" to conform DSI-32 name loader\\ |
| - Added "file normalization" to translate ALL filenames to lowercase.\\ | - Added "file normalization" to translate ALL filenames to lowercase.\\ |
| - Commented on service calls\\ | - Commented on service calls\\ |
| http://wiki.sensi.org//download/ns32k/emu32k_load_10a.tgz | http://wiki.sensi.org//download/ns32k/emu32k_load_10a.tgz |
| |
| With this patch you can use lowercase filenames everywhere. File extensions is unnecessary. All options after ''-a'' are passed to the 32000 program (like as real LOAD.EXE). | With this patch you can use lowercase filenames everywhere. File extensions are unnecessary. All options after ''-a'' are passed to the 32000 program (like as real LOAD.EXE). |
| <code>./load cc -a -O -ge -X88 test.c | <code>./load cc -a -O -ge -X88 test.c |
| ./load as -a test | ./load as -a test |
| [[wp>Portable_C_Compiler|Portable C compiler]] (pcc) ported to 16032:\\ | [[wp>Portable_C_Compiler|Portable C compiler]] (pcc) ported to 16032:\\ |
| http://www.tuhs.org/Archive/Applications/Portable_CC/\\ | http://www.tuhs.org/Archive/Applications/Portable_CC/\\ |
| Contains **a16**, **cc16** and **ld16** sourcecode. Binary format: **a.out** variant. | Contains **a16**, **cc16** and **ld16** sourcecode. Binary format is **a.out** variant. |
| |
| Not tested. | Not tested. |
| | |
| | ==== Labtam ==== |
| | |
| | http://www.cpu-ns32k.net/Multi.html |
| | |
| | Labtam firmware:\\ |
| | http://wiki.sensi.org/download/ns32k/Labtam-V32-G87.zip |
| | |
| | It supports the following Multibus controllers:\\ |
| | ''Disk:\\ |
| | * Labtam Z80 disk controller *\\ |
| | * Interphase STORAGER disk *\\ |
| | * Interphase 2190 SMD Controller *\\ |
| | Tape:\\ |
| | * Labtam Streaming Tape Interface *\\ |
| | * XYlogics 472 Tape controller *\\ |
| | * Interphase STORAGER tape *\\'' |
| |
| ==== TDS ==== | ==== TDS ==== |
| ==== GENIX ==== | ==== GENIX ==== |
| |
| GENIX was a National Semiconductor's trademark for the UNIX-class OS for the NS32000 architecture. Early GENIX was a 4.xBSD port and later GENIX was a UNIX SYSV (R2 and R3) port. A significant number of workstations used this OS: i.e. [[http://cpu-ns32k.net/Whitechapel.html|Whitechapel Computer Works]], [[http://cpu-ns32k.net/Trinity.html|Trinity Workstation]] and [[http://cpu-ns32k.net/Opus.html|NS SYS32/20]]. There were also proprietary 32000 UNIX ports under it's own names (i.e. Sequent [[wp>DYNIX]], [[http://cpu-ns32k.net/Siemens.html|Siemens MX 300]] [[wp>SINIX]], [[http://cpu-ns32k.net/Encore.html|Encore]] UMAX, Tektronix UTek e.t.c) | GENIX was National Semiconductor's trademark for the UNIX-class OS for the NS32000 architecture. Early GENIX was a 4.xBSD port and later GENIX was a UNIX SYSV (R2 and R3) port. A significant number of workstations used this OS: i.e. [[http://cpu-ns32k.net/Whitechapel.html|Whitechapel Computer Works]], [[http://cpu-ns32k.net/Trinity.html|Trinity Workstation]] and [[http://cpu-ns32k.net/Opus.html|NS SYS32/20]]. There were also proprietary 32000 UNIX ports under it's own names (i.e. Sequent [[wp>DYNIX]], [[http://cpu-ns32k.net/Siemens.html|Siemens MX 300]] [[wp>SINIX]], [[http://cpu-ns32k.net/Encore.html|Encore]] UMAX, Tektronix UTek e.t.c) |
| |
| === GENIX Documentation === | === GENIX Documentation === |
| Tilson, Michael (October 1983). "[[https://archive.org/stream/byte-magazine-1983-10/1983_10_BYTE_08-10_UNIX#page/n267/mode/2up|Moving Unix to New Machines]]". BYTE. p. 266. An article about porting early UNIX to the NS32000 architecture. Seems this article is a source of the "unreliability" opinion about NS32000 CPU. | Tilson, Michael (October 1983). "[[https://archive.org/stream/byte-magazine-1983-10/1983_10_BYTE_08-10_UNIX#page/n267/mode/2up|Moving Unix to New Machines]]". BYTE. p. 266. An article about porting early UNIX to the NS32000 architecture. Seems this article is a source of the "unreliability" opinion about NS32000 CPU. |
| |
| Since GENIX 2 is based on the AT&T SYSVR2/3 hence most of documentation are suitable for GENIX 2 too.\\ | Since GENIX 2 is based on the AT&T SYSVR2/3 hence most of the documentation are suitable for the GENIX 2 too.\\ |
| http://bitsavers.trailing-edge.com/pdf/att/unix/System_V_Release_2/\\ | http://bitsavers.trailing-edge.com/pdf/att/unix/System_V_Release_2/\\ |
| http://bitsavers.trailing-edge.com/pdf/att/unix/System_V_Release_3/ | http://bitsavers.trailing-edge.com/pdf/att/unix/System_V_Release_3/ |
| |
| 1) http://bitsavers.trailing-edge.com/bits/AmericanInformationSystems/AIS_GENIXsrc_6-20-85.tar.gz\\ | 1) http://bitsavers.trailing-edge.com/bits/AmericanInformationSystems/AIS_GENIXsrc_6-20-85.tar.gz\\ |
| This is an early GENIX sources (derived from the 4.1BSD) for the DB16000 board. Also includes SNXC (an early 32000 crosscompiler) for the VAX 4.1BSD. An assembler sourcecode is written in Pascal (sic!). C compiler is PCC. Binary format is a.out (variant). See below how to run SNXC at a VAX emulator. | This is an early GENIX sources (derived from the 4.1BSD) for the DB16000 board. Also includes SNXC (an early 32000 crosscompiler) for the VAX 4.1BSD. An assembler sourcecode is written in Pascal (sic!). C compiler is PCC. Binary format is a.out (variant). See below how to run this SNXC at a VAX emulator. |
| |
| 2) http://bitsavers.trailing-edge.com/bits/AmericanInformationSystems/AIS_oldUsr_10-3.cpio.gz\\ | 2) http://bitsavers.trailing-edge.com/bits/AmericanInformationSystems/AIS_oldUsr_10-3.cpio.gz\\ |
| This ia a /usr cpio archive from a more recent GENIX (SYSVR2). No sources, no /bin, /lib and /etc. The /usr/bin contains binaries in the ns32k COFF format (similar to the Opus binaries, see below). Some binaries are not stripped. | This ia a /usr cpio archive from a more recent GENIX (SYSVR2). No sources, no /bin, /lib and /etc. The /usr/bin contains binaries in the ns32k COFF format (similar to the Opus5 binaries, see below). Some binaries are not stripped. |
| |
| 3) http://wiki.sensi.org/download/ns32k/SysVr2.0_32000.tgz\\ | 3) http://wiki.sensi.org/download/ns32k/SysVr2.0_32000.tgz\\ |
| Sources may be [[sysvcross|cross-compiled]] under working SYSVR2 (i.e. SIMH/VAX or SIMH/3B2) to make a sort-of "crosstool". It is possible also to build binaries under relative old GCC (I've successfully built some sources with GCC 2.7 on a i386 [[https://archive.org/details/RHL2.1|RedHat Linux 2.1 Bluesky]], November 1995 under VirtualBox). | Sources may be [[sysvcross|cross-compiled]] under working SYSVR2 (i.e. SIMH/VAX or SIMH/3B2) to make a sort-of "crosstool". It is possible also to build binaries under relative old GCC (I've successfully built some sources with GCC 2.7 on a i386 [[https://archive.org/details/RHL2.1|RedHat Linux 2.1 Bluesky]], November 1995 under VirtualBox). |
| |
| 4) http://bitsavers.trailing-edge.com/bits/OpusSystems/Floppies/\\ | ==== Opus Systems board ==== |
| This is a full binary distributive for the Opus5 card (see http://cpu-ns32k.net/Opus.html ) also know as National Semiconductor SYS32/20 Development Board. It's SYSVR2 (GENIX2). No sourcecode. Binaries are in the ns32k COFF format. Contains some DOS utuluties for the Opus5 board. | |
| | 1) http://bitsavers.trailing-edge.com/bits/OpusSystems/Floppies/\\ |
| | This is a full binary distributive for the Opus5 card (see http://cpu-ns32k.net/Opus.html ) also know as a National Semiconductor SYS32/20 Development Board. It's SYSVR2 (equal to GENIX2 ?). No sourcecode. Binaries are in the ns32k COFF format. Contains some DOS utuluties for the Opus5 board. |
| | |
| | 2) http://bitsavers.org/pdf/opusSystems/32k/\\ |
| | Opus Systems board documentation. |
| |
| ==== Siemens SINIX ==== | ==== Siemens SINIX ==== |
| page 121 (an early XNSC16 version for VAX 4.1BSD. See below how to run it.)\\ | page 121 (an early XNSC16 version for VAX 4.1BSD. See below how to run it.)\\ |
| - http://bitsavers.trailing-edge.com/components/national/_dataBooks/1986_National_NS32000_dataBook.pdf\\ | - http://bitsavers.trailing-edge.com/components/national/_dataBooks/1986_National_NS32000_dataBook.pdf\\ |
| section 9-7 (a newer GNX version for 4.2BSD, I have no this version)\\ | section 9-7 (a newer GNX version for 4.2BSD, I do not have no this version)\\ |
| - http://bitsavers.trailing-edge.com/components/national/_dataBooks/1988_National_Series_32000_Microprocessors_Databook.pdf\\ | - http://bitsavers.trailing-edge.com/components/national/_dataBooks/1988_National_Series_32000_Microprocessors_Databook.pdf\\ |
| section 7-3 (GNX Release 2 for VAX 4.2BSD, VAX VMS or Unix SYSVR3. I have no this version)\\ | section 7-3 (GNX Release 2 for VAX 4.2BSD, VAX VMS or Unix SYSVR3. I have no this version)\\ |
| section 5-16 (GNX Version 3 for VAX BSD,VMS and Ultrix or NS Unix SYSVR3 port. I have no this version) | section 5-16 (GNX Version 3 for VAX BSD,VMS and Ultrix or NS Unix SYSVR3 port. I have no this version) |
| |
| | Distributives:\\ |
| http://oldcomputers-ddns.org/public/pub/rechner/national_semiconductors_series_32000/index.html\\ | http://oldcomputers-ddns.org/public/pub/rechner/national_semiconductors_series_32000/index.html\\ |
| GNX v3 and GNXv4 documentation and GNX v4 MS-DOS executables. | GNX v3 and GNXv4 documentation and GNX v4 MS-DOS executables. |
| http://gunkies.org/wiki/Installing_4.1c_BSD_on_SIMH | http://gunkies.org/wiki/Installing_4.1c_BSD_on_SIMH |
| |
| Network was in the "embrionic" stage in the 4.1BSD. An emulated "tape" may be used to "import" and "export" between emulated OS and host. To extract a .tap SIMH tape image there is a "extracters/rawtap" ulility from the SIMH's utils:\\ | The network was in the "embrionic" stage in the 4.1BSD. An emulated "tape" may be used to "import" and "export" between emulated OS and host. To extract a .tap SIMH tape image there is a "extracters/rawtap" ulility from the SIMH's utils:\\ |
| https://github.com/simh/simtools | https://github.com/simh/simtools |
| |