| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| ns32ksoft [2026/06/24 07:35] – [GENIX] admin | ns32ksoft [2026/06/24 09:22] (current) – [Opus Systems board] admin |
|---|
| |
| ==== Definicon ==== | ==== Definicon ==== |
| Definicon DSI-32 was a "coprocessor" 8-bit ISA bus board with NS32032 CPU designed to run "heavy" math tasks. | Definicon DSI-32 was an "32-bit coprocessor" 8-bit ISA bus board with NS32032 CPU designed to run "heavy" math tasks. |
| |
| See Byte Magazine articles:\\ | See the 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\\ |
| p. 116 The DSI-32 Coprocessor Board. Part 2: The Software | p. 116 The DSI-32 Coprocessor Board. Part 2: The Software |
| |
| Micro Cornucopia magazine article: | Micro Cornucopia magazine article:\\ |
| http://bitsavers.trailing-edge.com/pdf/microCornucopia/Micro_Cornucopia_%2325_Aug85.pdf\\ | http://bitsavers.trailing-edge.com/magazines/Micro_Cornucopia/Micro_Cornucopia_25_Aug85.pdf\\ |
| p.52 The Definicon DSI-32 Co-Processor\\ | p.52 The Definicon DSI-32 Co-Processor\\ |
| |
| Interesting issue about "Scienstific coprocessors" for the early PCs (PC Mag 14 Apr 1987) \\ | An interesting issue regarding "Scienstific coprocessors" for the early PCs (PC Mag 14 Apr 1987): \\ |
| https://books.google.ru/books?id=Jr7Bj4Yr0FMC&printsec=frontcover\\ | https://books.google.ru/books?id=Jr7Bj4Yr0FMC&printsec=frontcover\\ |
| p.208 "Changing the rules of the game"\\ | p.208 "Changing the rules of the game"\\ |
| === 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 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). | This is a complete Definicon software set. It includes the 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). The 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 |
| |
| 2) http://cpu-ns32k.net/files/Def-Soft.zip \\ | 2) http://cpu-ns32k.net/files/Def-Soft.zip \\ |
| This archive contains a more recent assembler, but not a full set. Includes 32IO and LOAD sources(!). Filenames in Uppercase. Also includes some Public Domain utilities. | This archive contains a more recent assembler, but not a full set. Includes the 32IO and LOAD sources(!). Filenames in Uppercase. Also includes some Public Domain utilities. |
| <code>DSI-32000 Assembler V1.03m, Definicon Systems Inc. | <code>DSI-32000 Assembler V1.03m, Definicon Systems Inc. |
| DSI-32000 Linker V1.03d, Definicon Systems Inc</code> | DSI-32000 Linker V1.03d, Definicon Systems Inc</code> |
| C Compiler options: [[dsi32-copt]] . TODO: change emulator to "virtual" directory (?). | C Compiler options: [[dsi32-copt]] . TODO: change emulator to "virtual" directory (?). |
| |
| ''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.\\ | The ''ln'' linker has unusual syntax. It requires a special "definition file" (slightly similar to the "response file" for a Microsoft's linker). The 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 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:\\ | As 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 |
| <code>for i in *; do mv $i `echo $i | tr [:upper:] [:lower:]`; done</code> | <code>for i in *; do mv $i `echo $i | tr [:upper:] [:lower:]`; done</code> |
| |
| A ''mon2m'' is a symbolic debugger. To use a symbolic debugger you have to make a ''<name>.s32'' file with linker directive ''symbol''. Debugger will load it automatically. Second argument ''<name>.e32'' is a program to debug. It becomes ''argv[0]'' argument. Symbolic names must start with ''.'' to inform the debugger that the string is a name and not a hexadecimal input: | A ''mon2m'' is a symbolic debugger. To use a symbolic debugger you have to make a ''<name>.s32'' file with linker directive ''symbol''. The debugger will load it automatically. Second argument ''<name>.e32'' is a program to debug. It becomes ''argv[0]'' argument. Symbolic names must start with ''.'' to inform the debugger that the string is a name and not a hexadecimal input: |
| <code>./load ln -a file=test map symbol | <code>./load ln -a file=test map symbol |
| ./load mon2m test | ./load mon2m test |
| **TDS** (Tiny Development System) is a software for the National Semiconductor's development boards: **DB16000**, **DB16000A** (later renamed to **DB32016**) and **DB32000**. It includes simply editor, assembler and debugger.\\ | **TDS** (Tiny Development System) is a software for the National Semiconductor's development boards: **DB16000**, **DB16000A** (later renamed to **DB32016**) and **DB32000**. It includes simply editor, assembler and debugger.\\ |
| http://cpu-ns32k.net/National.html\\ | http://cpu-ns32k.net/National.html\\ |
| http://bitsavers.trailing-edge.com/components/national/db32016/\\ | http://bitsavers.trailing-edge.com/components/national/ns32000/\\ |
| https://www.scss.tcd.ie/SCSSTreasuresCatalog/hardware/TCD-SCSS-T.20141120.007/TCD-SCSS-T.20141120.007.pdf | https://www.scss.tcd.ie/SCSSTreasuresCatalog/hardware/TCD-SCSS-T.20141120.007/TCD-SCSS-T.20141120.007.pdf |
| |
| ==== GENIX ==== | ==== GENIX ==== |
| |
| 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 its 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 port of UNIX SYSV (R2 and R3). 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 its 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 etc.) |
| |
| === GENIX Documentation === | === GENIX Documentation === |
| section 7-16 (GENIX/V.3 is a port of AT&T's System V, Release 3.0, UNIX operating system for the Series 32000 microprocessor family. ) | section 7-16 (GENIX/V.3 is a port of AT&T's System V, Release 3.0, UNIX operating system for the Series 32000 microprocessor family. ) |
| |
| 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. The article discusses porting early UNIX to the NS32000 architecture. Seems this article is a source of the "unreliability" opinion about NS32000 CPU — a view that was subsequently widely repeated in other articles. |
| |
| Since GENIX 2 is based on the AT&T SYSVR2/3 hence most of the documentation are suitable for the GENIX 2 too.\\ | Since GENIX 2 is based on AT&T SYSVR2/3, most documentation is suitable for it as well.\\ |
| 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/ |
| |
| ==== Opus Systems board ==== | ==== Opus Systems board ==== |
| | |
| | http://cpu-ns32k.net/Opus.html |
| |
| 1) http://bitsavers.trailing-edge.com/bits/OpusSystems/Floppies/\\ | 1) http://bitsavers.trailing-edge.com/bits/OpusSystems/Floppies/\\ |
| 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)\\ |
| - http://bitsavers.trailing-edge.com/components/national/_dataBooks/1989_National_Embedded_System_Processor_Databook.pdf\\ | - http://bitsavers.trailing-edge.com/components/national/_dataBooks/1989_National_Embedded_System_Processor_Databook.pdf\\ |
| 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 do not have this version) |
| |
| Distributives:\\ | Distributives:\\ |
| page 33 | page 33 |
| |
| It is still possible to run a GNX tools under [[https://www.dosbox.com/|DosBox]] even on the recent Windows system (including a modern 64-bit Windows 10). DosBox is an emulator program which emulates an IBM PC compatible computer running a DOS operating system. | It is still possible to run the GNX tools under [[https://www.dosbox.com/|DosBox]] even on the recent Windows system (including a modern 64-bit Windows 10). DosBox is an emulator program which emulates an IBM PC compatible computer running a DOS operating system. Although DosBox is primarily designed to run PC games, it also runs system programs well. |
| |
| Download a GNX 4.4\\ | Download a GNX 4.4\\ |
| DosBox provides 16MB of DOS XMS memory by default (GNX/MS-DOS uses built-in DOS Extender). | DosBox provides 16MB of DOS XMS memory by default (GNX/MS-DOS uses built-in DOS Extender). |
| |
| GNX v3 and v4 use relative modern ''COFF'' format (with debug info, modules support e.t.c). GNX4 cross-tools has a SYS5_2 and SYS5_3 (with shared libraries support) targets. For more info read the “GNX Language tools 4” book “COFF Programmers Guide” chapter. | GNX v3 and v4 use relative modern ''COFF'' format (with debug info, modules support etc.). GNX4 cross-tools has a SYS5_2 and SYS5_3 (with shared libraries support) targets. For more info read the “GNX Language tools 4” book “COFF Programmers Guide” chapter. |
| |
| GNX v4 C compiler supports ANSI C and function prototypes. | GNX v4 C compiler supports ANSI C and function prototypes. |
| |