Complete guides for compiling, linking, building, and automating NORD/SINTRAN development workflows.
Complete Compiler Command Reference
Comprehensive reference for all NORD/SINTRAN compilers.
Contents:
- Compiler invocation syntax
- Command-line options
- Compiler switches and flags
- Output file formats
- Error messages
- Optimization options
Covered Compilers:
- @NPL - NORD Programming Language
- @MAC - Macro Assembler
- @N500 - NORD-500 Assembler
- @C / @CC - C Compiler
- @PLANC - PLANC Compiler
- @PASCAL - Pascal Compiler
- @FORTRAN - FORTRAN Compiler
- @COBOL - COBOL Compiler
- @BASIC - BASIC Compiler
Complete Linking and Loading Guide
Master the NORD relocating loader and build process.
Contents:
- @LOAD command syntax
- Object file formats (BRF, NRF)
- Library management
- Symbol resolution
- Memory layout
- Entry points
- Overlay structures
- Common linking errors
Topics:
- Creating executables
- Linking multiple modules
- Using system libraries
- Creating libraries
- Advanced linking techniques
ND-500 Linking and File Formats - Deep Dive
Comprehensive guide to ND-500 program linking, NRF format, and domain creation.
Contents:
- ND Linker (LINKER) complete command reference
- NRF format binary specification (36 control groups)
- DOM files (domains) - structure, loading, MMU setup
- SEG files (free segments) - creation and linking
- Symbol resolution mechanics and library handling
- Trap handling configuration and custom handlers
- Domain loading process and MMU initialization
- File format binary specs for emulator developers
Topics:
- ND-500 vs ND-100 linking differences
- Creating domains and free segments
- Multi-segment applications (up to 32 segments)
- NRF Library Handler (NLH) for library management
- FORTRAN COMMON blocks handling
- Troubleshooting undefined symbols, size issues
- Complete NRF control group reference (BEG, END, DEF, REF, etc.)
- DOM/SEG binary layout with C code examples
Target Audience:
- ND-500 assembly programmers
- Emulator developers
- System programmers
- Developers troubleshooting complex linking
Size: 3000+ lines, 12 comprehensive sections
MODE Scripts and Build Automation
Automate your development workflow with MODE scripts.
Contents:
- MODE script syntax
- Script structure
- Variables and parameters
- Conditional execution
- Loops and iteration
- Error handling
- Build automation
- Multi-file projects
Topics:
- Creating build scripts
- Automating compilation
- Managing dependencies
- Testing automation
- Deployment scripts
Complete Development Tools Reference
All SINTRAN development tools and utilities.
Contents:
- Debuggers
- Profilers
- Code analyzers
- File utilities
- System tools
- Cross-reference generators
- Documentation tools
Covered Tools:
- @MAC-DEBUG - Interactive debugger
- @SIBAS - System debugger
- @DUMP - Object file dumper
- @XREF - Cross-reference generator
- @COMPARE - File comparison
- @PATCH - Binary patching
- And many more...
@QED myprogram.npl - Edit source file
See ../Editors/ for editor documentation.
@NPL myprogram.npl - Compile NPL to MAC
@MAC myprogram - Assemble to object file
See COMPILER-COMMANDS-REFERENCE.md for all compilers.
@LOAD myprogram - Create executable
See LINKING-GUIDE.md for linking details.
@myprogram - Run your program
@MAC-DEBUG myprogram - Debug if needed
See TOOLS-REFERENCE.md for debugging tools.
@myprogram:MODE - Run build script
See SCRIPT-GUIDE.md for automation.
@QED hello.npl - Write code
@NPL hello.npl - Compile
@MAC hello - Assemble
@LOAD hello - Link
@hello - Run
@QED main.npl - Write main module
@QED utils.npl - Write utility module
@NPL main.npl - Compile main
@NPL utils.npl - Compile utils
@MAC main - Assemble main
@MAC utils - Assemble utils
@LOAD main,utils - Link together
@main - Run
! build:MODE - Build script
@NPL main.npl
@NPL utils.npl
@MAC main
@MAC utils
@LOAD main,utils
@MSG "Build complete!"
Run with: @build:MODE
- Write NPL source (
.npl) - Compile with
@NPL→ produces MAC source - Assemble with
@MAC→ produces BRF object - Link with
@LOAD→ produces executable
- Write C source (
.c) - Compile with
@C→ produces object file - Link with
@LOAD→ includes C runtime library - Run executable
- Write PLANC source (
.planc) - Compile with
@PLANC→ produces object file - Link with
@LOAD→ includes PLANC runtime - Run executable
- Write FORTRAN source (
.for) - Compile with
@FORTRAN→ produces object file - Link with
@LOAD→ includes FORTRAN library - Run executable
- @NPL - NPL compiler
- @MAC - MAC assembler
- @C - C compiler
- @PLANC - PLANC compiler
- See COMPILER-COMMANDS-REFERENCE.md
- @LOAD - Relocating loader
- @LIB - Library manager
- @MAKE - Dependency tracking
- See LINKING-GUIDE.md
- @MAC-DEBUG - Interactive debugger
- @SIBAS - System debugger
- @DUMP - Object file analyzer
- See TOOLS-REFERENCE.md
- @XREF - Cross-reference
- @PROFILE - Performance profiler
- @COMPARE - File comparison
- See TOOLS-REFERENCE.md
- ✅ Use separate directories for source, objects, and executables
- ✅ Name files consistently (e.g.,
module.npl,module.mac,module.brf) - ✅ Group related files together
- ✅ Create MODE scripts for multi-file projects
- ✅ Include error checking in scripts
- ✅ Document script parameters and usage
- ✅ Version control your build scripts
- ✅ Enable all compiler warnings
- ✅ Fix warnings, don't ignore them
- ✅ Use optimization for production builds
- ✅ Keep debug symbols for development
- ✅ Resolve all undefined symbols
- ✅ Use libraries for common code
- ✅ Check memory layout
- ✅ Verify entry points
- ✅ Test after every compilation
- ✅ Use debugger for complex issues
- ✅ Create test scripts for regression testing
- ✅ Document known issues
- System Languages: ../Languages/System/
- Application Languages: ../Languages/Application/
- Editors: ../Editors/
- SINTRAN Commands: ../../Reference-Manuals/SINTRAN-COMMANDS-REFERENCE.md
- Loader Manual: [../../Reference-Manuals/ND-60.066.04 ND Relocating Loader.md](../../Reference-Manuals/ND-60.066.04 ND Relocating Loader.md)
- All Manuals: ../../Reference-Manuals/
- SINTRAN OS: ../../SINTRAN/OS/
@QED file - Edit file
@NPL file.npl - Compile NPL
@MAC file - Assemble
@LOAD file - Link
@file - Run
@DUMP file - Examine object
@XREF file - Generate cross-ref
@MAC-DEBUG file - Debug program| Extension | Description |
|---|---|
.npl |
NPL source code |
.mac |
MAC assembly source |
.brf |
Binary Relocatable Format (object) |
.nrf |
NORD-500 Relocatable Format |
.c |
C source code |
.planc |
PLANC source code |
.for |
FORTRAN source code |
.cob |
COBOL source code |
:MODE |
MODE script |
- Choose a language - See ../Languages/
- Learn your editor - See ../Editors/
- Write a simple program - Start with Hello World
- Follow the workflow - Compile → Link → Run
- Create build scripts - Automate repetitive tasks
- Use debugging tools - Fix issues efficiently
Last Updated: October 20, 2025 Documentation Files: 5 complete guides (including ND-500 deep-dive) Documentation Status: ✅ Complete workflow coverage with ND-500 binary specifications