mirror of
https://github.com/alfishe/amiga-bootcamp.git
synced 2026-06-12 16:16:28 +00:00
Comprehensive technical documentation covering: - Hardware: OCS/ECS/AGA custom chip registers, Copper & Blitter deep dives - Boot sequence: cold boot through startup-sequence - Binary format: HUNK executable spec, relocation, debug info - Linking & ABI: .fd files, LVO tables, register calling conventions - Exec kernel: tasks, interrupts, memory, signals, semaphores - AmigaDOS: file I/O, FFS/OFS layout, CLI/Shell scripting - Graphics: planar bitmaps, Copper programming, HAM/EHB modes - Intuition: screens, windows, IDCMP, BOOPSI - Devices: trackdisk, SCSI, serial, timer, audio, keyboard - Libraries: utility, expansion, IFFParse, locale, ARexx - Networking: bsdsocket API, SANA-II, TCP/IP stack comparison - Toolchain: GCC, vasm/vlink, SAS/C, NDK, debugging - Reverse engineering: IDA/Ghidra setup, compiler fingerprints, case studies - CPU & MMU: 68040/060 emulation libs, PMMU, cache management - Driver development: SANA-II, Picasso96/RTG, AHI audio All files include breadcrumb navigation. No local paths or proprietary content.
84 lines
2.3 KiB
Markdown
84 lines
2.3 KiB
Markdown
[← Home](../README.md) · [Toolchain](README.md)
|
|
|
|
# NDK — Native Development Kit Versions
|
|
|
|
## Overview
|
|
|
|
The **NDK** (Native Development Kit) contains all header files, FD files, link libraries, and autodocs needed to develop for AmigaOS. It is the authoritative source for all structure definitions and API specifications.
|
|
|
|
---
|
|
|
|
## Version History
|
|
|
|
| NDK | OS | Source | Availability |
|
|
|---|---|---|---|
|
|
| NDK 1.3 | OS 1.3 | Commodore | Archived; ADF collections |
|
|
| NDK 2.0 | OS 2.0 | Commodore | Archived |
|
|
| NDK 3.1 | OS 3.1 | Commodore (final) | Widely archived, Aminet |
|
|
| NDK 3.5 | OS 3.5 | Haage & Partner | Included with OS 3.5 CD |
|
|
| NDK 3.9 | OS 3.9 | Haage & Partner | **Free download** from Hyperion/Aminet |
|
|
| NDK 3.2 | OS 3.2 | Hyperion | Commercial (~€30), bundled with OS 3.2 |
|
|
|
|
---
|
|
|
|
## Where to Download
|
|
|
|
| NDK | URL |
|
|
|---|---|
|
|
| NDK 3.9 | Aminet: `dev/misc/NDK39.lha` — **free, recommended baseline** |
|
|
| NDK 3.2 | https://www.hyperion-entertainment.com/ (purchase required) |
|
|
| NDK 3.1 | Search Aminet or archive.org for `NDK3.1.lha` |
|
|
|
|
---
|
|
|
|
## Contents
|
|
|
|
```
|
|
NDK_3.9/
|
|
Include/
|
|
include_h/ C headers (.h)
|
|
include_i/ Assembler includes (.i)
|
|
fd/ FD files (function definitions)
|
|
sfd/ SFD files (extended function definitions)
|
|
pragmas/ SAS/C pragma headers
|
|
inline/ GCC inline headers
|
|
proto/ Portable proto headers
|
|
lvo/ LVO offset include files (.i)
|
|
Documentation/
|
|
autodocs/ Library/device API documentation
|
|
Lib/
|
|
linker_libs/ Amiga link libraries (.lib)
|
|
startup/ C startup code
|
|
```
|
|
|
|
---
|
|
|
|
## Key Differences Between Versions
|
|
|
|
| Feature | NDK 3.1 | NDK 3.9 | NDK 3.2 |
|
|
|---|---|---|---|
|
|
| `exec/exec.h` | OS 3.1 structures | + V39 extensions | + V47 extensions |
|
|
| 68040/060 support | Minimal | 040/060 library headers | Full |
|
|
| SFD files | No | Yes | Yes |
|
|
| Locale support | Basic | Full | Full |
|
|
| Datatypes | No | Yes | Yes |
|
|
| Reaction GUI | No | No | Yes |
|
|
|
|
---
|
|
|
|
## Using NDK with Cross-Compiler
|
|
|
|
```bash
|
|
# Set up include paths:
|
|
export NDK=/path/to/NDK_3.9
|
|
m68k-amigaos-gcc -I$NDK/Include/include_h \
|
|
-L$NDK/Lib/linker_libs \
|
|
-noixemul -o output source.c
|
|
```
|
|
|
|
---
|
|
|
|
## References
|
|
|
|
- Hyperion Entertainment: https://www.hyperion-entertainment.com/
|
|
- Aminet: https://aminet.net/
|