# Basics of computing
- Hexadecimal
- Colors
- Image
- Portable PixMap (1988-)
- [Examples](basics/examples)
- Portable PixMap 1/2
- Portable PixMap 2/2
---
# Charsets and encodings
- ASCII American Standard Code for Information Interchange (1967)
- printable ASCII
- complete
- Code Pages
- IBM PC cp437
- Icelandic cp861, Denmark/Norway cp865, Greek cp737 Windows-1252
- Central European cp852, KOI8-R
- EBCDIC: Extended Binary Coded Decimal Interchange Code (1964)
- APL: A Programming Language - EBCDIC CodePage 293 (1966)
- PETSCII - PET Standard Code of Information Interchange / CBM ASCII (1977-)
---
# File formats
Containers:
- IFF: EA Interchange File Format (1985)
- RIFF: Resource Interchange File Format (1991)
- CFBF/CDFv2: Compound file binary format / Composite Document file v2 (DOCFILE / D0CF11E) (1997-2004)
- EBML: Extensible Binary Meta Language (2002)
- ISOBMFF: ISO Base Media File Format (2004?)
## Executables
- ELF - Executable and linkable format
### Microsoft
- Com (Dos [transient] commands)
- Exe - MZ executable [DOS] (1981-)
- EXE
- EXE (PE Dos Stub)
- Pif - Program information File (Windows 1-, 1985-)
- NE - New Executable (Windows 1-2000, 1985-2000)
- LE - Linear Executable (DOS, 1992)
- PE - Portable executable (Windows NT 3.1-, 1993-)
### Apple
- Rsrc - Resource fork (Mac System 1-, 1984)
- Pef - Preferred Executable Format (Mac System 7-9 , 1991-1999)
- Macho - Mach Object (NeXTSTEP, MacOS, iOS)
- (Little 32b)
- (Little 64b)
- (Big 32b PowerPC)
- (Big 64b PowerPC)
- Fat/Universal Mach-o
### Others
- Class - Java / JVM (1994)
- DEX - Dalvik Executable [Android] (2008?)
- PYC - Compiled python (1998-)
- Swf - ShockWave Flash / Small web file (1995?)
- Dol - Nintendo Dolphin (Gamecube, Wii, 2001-2017)
- executable
- complete header
- NRO - NX (Nintendo Switch) Relocatable Object
- OFF - OS/360 Object File format [EBCDIC] (1966?)
- Tos - GEMDOS Program format [Atari ST] (1985)
- Hunk - Amiga Hunk [Commodore AmigaOS] (1985)
- TE - Terse Executable [UEFI] (2017?)
- Wasm - WebAssembly (2017)
## Images
- Bpg - Better/Bellard Portable Graphics (2014)
- Png - Portable Network graphics (1996)
- Png Plus: a PNG with OLE chunks, by Microsoft Picture It!
- Jpeg (JFIF) - Joint Photographic Experts Group - File Interchange Format (1992)
- Dicom - Digital Imaging and Communications in Medicine (1985)
- Psd - PhotoShop Document (1990)
- Xbm - X BitMap (X11 1989)
- Netpbm (1988)
- Pgm - Portable Graymap
- Ppm - Portable Pixmap
- [I]Lbm - Interleaved Bitmap [IFF] (1985)
- BMP - Bitmap [Windows 2 (1987)]
- v1
- v3 (1991)
- v5 (1998)
- Gif - Graphics Interchange Format (1987)
- v87
- v89, with a comment
- TIFF - Tag Image File Format (1986)
- little endian
- big endian
- PCX - Zsoft Picture exchange [DOS] (1982)
- 16 colors
- 256 colors
- TGA/TARGA - TrueVision [Advanced Raster] Graphics Adapter (1984)
- ICO - Windows icon (1985)
- w/ BMP (1995?)
- w/ PNG (2006)
- Pif - Portable Image Format (2022)
- Qoi - Quite Ok Image (2021)
- 1ba - 1-bit animation (2023)
## Videos
- Mp4 [ISOBMFF] (2001)
- Mkv - Matroska video [EBML] (2002)
- Y4M - Yuv4mpeg (2001)
- (mono)
- (yuv)
## Archives
- [Zlib/Deflate/Zip/GZIP?](https://speakerdeck.com/ange/gzip-equals-zip-equals-zlib-equals-deflate)
- Gzip - GNU zip (1992)
- Ar - Archive (1971)
- Tar - Tape archive (1979)
- Copy [files] In & out [of archives] (1977)
- binary
- ASCII
- Zip - PkZip (1989)
- Crx - Chrome extension (2017)
- Lzma - Lempel-Ziv-Markov chain algorithm (1998)
- Lzma
- with End of Stream marker
- 7zip (1999)
- Xar (2007)
- Xz (2009)
- Microsoft Compress (1990)
- Cab - Microsoft Cabinet File (Mscf) (1995?)
- Rpm - Redhat/RPM Package Manager (1997)
- Rar - Roschal Archive (1993)
- v1.4
- v4 (1996)
- v5 (2013)
- Arj - Archived by Robert Jung (1991?)
- bz2 - Bzip2 (1996)
Wad - Where's all the data? (1993)
- (structure)
- (in Doom)
Zstd - Zstandard (2015)
- Zstd
- w/ Skippable frame
- LZ4 (2011)
## Documents
- Eps - Encapsulated PostScript (1987)
- Pdf - Portable document format (1992)
- RTF - Rich text format (1987)
- Microsoft Office
- Msi - Microsoft Installer [CFB]
- Docm - WordML/WordProcessingML (Microsoft Office XML format) - XML (2002)
- ActiveMime - MSO XML Bindata
- Docx - Doc XML (Office Open XML) - ZIP+XMLs (2006)
Multiplan - Excel:
- Sylk - Symbolic link - Multiplan 1 (1984-), Excel 1 (1986-)
- Biff - Binary Interchange File Format
- v2: v2, 1989 (raw)
- v8: 97-2003, 1998-2004 [CFB]
- Hlp - WinHelp (1990)
- CHM - Compiled HTML help - Info-Tech Storage Format (1997)
- One - One Note (2014-)
- Wmf - Windows Metafile Format (1992)
- Wmf
- with Placeable header
- Emf - Enhanced Metafile Format (1993)
## Sound
- 8svx - 8-bit sample voice [Amiga][Iff] (1985)
- AIFF - Audio interchange file format [Apple][Iff] (1988)
- AIFF
- AIFC / AIFF-C - Compressed (1991)
- Wav - Waveform [Riff] (1991)
- Rmi - Riff Midi [Riff]
- Midi - Musical Instrument Digital Interface
## Metadata
- IPTC IIM / International Press Telecommunications Council - Information Interchange Model (1991)
- Exif - Exchangeable Image File Format (1995)
- XMP - Extensible Metadata Platform (2001)
## Serialization
- ASN.1 - Abstract Syntax Notation One (1984)
- Bplist - Binary property list (2000)
- Protobuf - Protocol buffers (2001)
## Vector Fonts
- OTF - OpenType Font Format (1996)
- TTF - TrueType Font (1991)
- with a Location Table v1
- with a Location Table v2
- Woff - Web Open Font Format (2012)
- Woff2 - Web Open Font Format 2.0 (2018)
## Others
- Mbr+DPT - Master Boot Record with Disk Partitions Table (1983)
- Lnk - Shell link [Windows] (1995?)
- Cdix - ClangD Index [Riff] (2018)
- Hex records - Intel[lec] Hexadecimal object (1973)
- Uf2 - USB Flashing format (2016)
## Opcodes
- x64
- x86
## [Weird files](weird/)
## 101
Dissection with more descriptions, and explanations (my initial style of binary posters).
source Inkscape SVGs and PoC with their sources are included
[PE 101](pe101/README.md)
PE 101 (light)
### Others
ELF 101,
ZIP 101,
Mach-O 101,
Class 101,
PDF 101,
COM 101,
Wav 101
## Structures
A layout of the various format's structures
PE 102
# Opcodes' tables
Available in compact
DVM JVM DotNet
or 'with descriptions' formats
DVM JVM DotNet (full)
---
## Cryptography
Jneavat! N qnatrebhf pelcgbtencuvp bowrpg vf urnqvat lbhe jnl....
Crypto modes