docs(amiga): add comprehensive .info icon format article with real icon examples

New article covering all five icon format generations:
- Old-Style (OS 1.0, 4-color planar)
- MagicWB (Stefan Stuntz, 8-color standardized palette)
- NewIcons (Nicola Salmoria, 256-color ASCII in ToolTypes)
- ColorIcons (OS 3.5, FORM ICON IFF with palette chunky)
- GlowIcons/PNG (OS 3.5+, NeXTSTEP-inspired, ARMS chunks)

Includes binary layout specs, API reference, 5 practical examples
(C + Python), decision guide, historical timeline, and real icon
images extracted from actual .info files across all formats.
This commit is contained in:
Ilia Sharin 2026-07-15 18:51:18 -04:00
parent 5bf51819af
commit c6f6253ea0
16 changed files with 1534 additions and 0 deletions

View file

@ -11,6 +11,7 @@ Shared libraries beyond the core exec/dos/graphics/intuition subsystems. These p
| [utility.md](utility.md) | TagItem lists with chaining (TAG_MORE), callback hooks (register convention), date/time utilities, tag iteration patterns | | [utility.md](utility.md) | TagItem lists with chaining (TAG_MORE), callback hooks (register convention), date/time utilities, tag iteration patterns |
| [expansion.md](expansion.md) | Zorro II/III bus architecture, AutoConfig ROM layout, board enumeration, FPGA implementation notes | | [expansion.md](expansion.md) | Zorro II/III bus architecture, AutoConfig ROM layout, board enumeration, FPGA implementation notes |
| [icon.md](icon.md) | Workbench icons (.info): DiskObject structure, ToolType parsing, icon types, OS 3.5+ true-color icons | | [icon.md](icon.md) | Workbench icons (.info): DiskObject structure, ToolType parsing, icon types, OS 3.5+ true-color icons |
| [icon_format.md](icon_format.md) | **Icon file binary format deep dive: .info byte layout (DiskObject, Gadget, Image structs), MagicWB 8-color palette standard, NewIcons ASCII encoding, OS 3.5 ColorIcons (FORM ICON IFF), GlowIcons/PNG (ARMS chunk), NeXTSTEP design influence, historical timeline, create/read/edit examples, Python extraction, cross-platform format detection** |
| [workbench.md](workbench.md) | Workbench integration: WBStartup handling, AppWindow drag-and-drop, AppIcon, AppMenuItem | | [workbench.md](workbench.md) | Workbench integration: WBStartup handling, AppWindow drag-and-drop, AppIcon, AppMenuItem |
| [iffparse.md](iffparse.md) | IFF file parsing: ILBM/8SVX/ANIM, nested chunk hierarchy, ByteRun1 compression, PBM planar deinterleaving, clipboard integration, decision guide vs DataTypes | | [iffparse.md](iffparse.md) | IFF file parsing: ILBM/8SVX/ANIM, nested chunk hierarchy, ByteRun1 compression, PBM planar deinterleaving, clipboard integration, decision guide vs DataTypes |
| [locale.md](locale.md) | Internationalization: catalog system (.cd/.ct files), locale-aware date/number formatting, character classification | | [locale.md](locale.md) | Internationalization: catalog system (.cd/.ct files), locale-aware date/number formatting, character classification |

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 750 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

1532
11_libraries/icon_format.md Normal file

File diff suppressed because it is too large Load diff

View file

@ -261,6 +261,7 @@ The Amiga's documentation was scattered across out-of-print manuals, Usenet post
| [utility.md](11_libraries/utility.md) | TagItems, hooks, date utilities | | [utility.md](11_libraries/utility.md) | TagItems, hooks, date utilities |
| [expansion.md](11_libraries/expansion.md) | Zorro bus, AutoConfig | | [expansion.md](11_libraries/expansion.md) | Zorro bus, AutoConfig |
| [icon.md](11_libraries/icon.md) | Workbench icons, DiskObject | | [icon.md](11_libraries/icon.md) | Workbench icons, DiskObject |
| [icon_format.md](11_libraries/icon_format.md) | **Icon file binary format: .info byte layout, MagicWB palette, NewIcons (ASCII in ToolTypes), ColorIcons (FORM ICON), GlowIcons/PNG (ARMS chunk), create/read/edit, Python examples** |
| [workbench.md](11_libraries/workbench.md) | WBStartup, AppWindow | | [workbench.md](11_libraries/workbench.md) | WBStartup, AppWindow |
| [iffparse.md](11_libraries/iffparse.md) | IFF file parsing: ILBM/8SVX/ANIM, nested chunks, ByteRun1, PBM deinterleaving, clipboard, decision guide vs DataTypes | | [iffparse.md](11_libraries/iffparse.md) | IFF file parsing: ILBM/8SVX/ANIM, nested chunks, ByteRun1, PBM deinterleaving, clipboard, decision guide vs DataTypes |
| [locale.md](11_libraries/locale.md) | Internationalization, catalogs | | [locale.md](11_libraries/locale.md) | Internationalization, catalogs |