This repository contains documentation for the SWFRecomp project, which aims to recompile Adobe Flash (SWF) content to C code.
Live Demos: https://swfrecomp.github.io/SWFRecompDocs/ - See Flash running as WebAssembly!
Interactive WebAssembly demonstrations of recompiled Flash content (see docs/ for source):
- trace_swf_4 Demo - Console output demo showing SWF → C → WASM pipeline
Step-by-step implementation guides for various components:
-
as3-implementation.md - ActionScript 3 implementation guide
- as3-seedling-implementation.md - An implementation guide for only the AS3 features required to run the game Seedling
- abc-parser-implementation.md - Phase 1: ABC Parser implementation
- as3-test-swf-generation.md - Guide for generating AS3 test SWF files
-
font-implementation.md - Implementation guide for font handling in SWF files
- font-phase1-implementation.md - Phase 1: Basic font support implementation
High-level project planning documents:
- wasm-project-plan.md - Overall WebAssembly project architecture and roadmap
- streamline-test-builds.md - Proposal for streamlining the test build process to reduce duplication and leverage SWFModernRuntime
Current project status and progress tracking (see status/README.md for details):
- project-status.md - Current status of the SWFRecomp project
- 2025-11-01-string-variable-implementation.md - String variable storage and optimization implementation summary
Branch merge documentation for coordinating updates across repositories (see merge/README.md for details):
Branch Comparison Documents:
- swfrecomp-branch-differences.md - Complete diff analysis: SWFRecomp wasm-support vs master
- swfmodernruntime-branch-differences.md - Complete diff analysis: SWFModernRuntime wasm-support vs master
Merge Analyses:
- swfrecomp-wasm-support-merge-analysis.md - SWFRecomp wasm-support → master merge analysis
- swfmodernruntime-wasm-support-merge-analysis.md - SWFModernRuntime wasm-support → master merge analysis
Manually compiled reference material, separate from the official specifications:
- trace-swf4-wasm-generation.md - Complete walkthrough: SWF → C → WebAssembly pipeline
- abc-format.md - Technical reference for the ActionScript Byte Code (ABC) file format
Official Adobe Flash and ActionScript specifications (see specs/README.md for detailed source information):
- swf-spec-19.txt - SWF File Format Specification (Version 19)
- abc-format-46-16.txt - ActionScript Bytecode (ABC) format specification
- avm2overview.txt - ActionScript Virtual Machine 2 (AVM2) Overview
- avm2_opcodes_raw.txt - Raw AVM2 opcode reference
- opcodes.as - ActionScript opcode definitions
- pdf/ - PDF versions of official specifications
- swf-spec-19-images/ - Images referenced in SWF specification
Older documentation that may still be useful for historical reference (see deprecated/README.md for details):
- Various implementation plans and analyses that have been superseded by current approaches
- See deprecated/ directory for full list
Maintenance utilities for the documentation repository (see scripts/README.md for details):
- fix-markdown-formatting.sh - Fix consecutive double-asterisk lines in markdown files
See the main SWFRecomp project for licensing information.