NdsForge.NET 1.0.1
Read, validate, edit, compare, and build Nintendo DS and DSi images from .NET
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 CIAsyncDisposable
 CNdsForge.NdsImageProvides structured, random-access inspection of a Nintendo DS-family image
 CIDisposable
 CNdsForge.NdsDsiRsaSignatureProviderSnapshots a managed RSA-1024 private key for deterministic DSi header signing. Dispose the provider after its build recipes finish so copied private parameters are cleared; the source RSA remains caller-owned
 CNdsForge.NdsImageProvides structured, random-access inspection of a Nintendo DS-family image
 CNdsForge.INdsDsiSignatureProviderAbstracts DSi header signing so build pipelines may use a managed private key, hardware-backed key, or remote signing authority without exposing private material to the builder. Implementations must produce the format's 128-byte RSA-1024 PKCS#1 v1.5 signature over SHA-1 of the exact supplied 0xE00 bytes
 CNdsForge.NdsDsiRsaSignatureProviderSnapshots a managed RSA-1024 private key for deterministic DSi header signing. Dispose the provider after its build recipes finish so copied private parameters are cleared; the source RSA remains caller-owned
 CNdsForge.NdsBannerRepresents a versioned menu icon, localized titles, and optional DSi animation
 CNdsForge.NdsBannerAnimationStepDescribes one timed DSi menu-icon pose. Tile and palette frames are selected independently so an animation can recolor existing artwork without duplicating its 512-byte tile data; a zero packed word is reserved as the hardware sequence terminator and therefore cannot represent a step
 CNdsForge.NdsBannerBuilderBuilds deterministic DS banners, including the DSi animated-icon layout
 CNdsForge.NdsBuildFileHolds one NitroFS payload while an image is being assembled, independently of any source ROM
 CNdsForge.NdsChecksumsCalculates checksums used by Nintendo DS image structures
 CNdsForge.NdsDirectoryMaterializes one FNT directory record as a navigable node while preserving its encoded child order
 CNdsForge.NdsDirectoryImportOptionsBounds host-directory materialization and makes merge and link behavior explicit
 CNdsForge.NdsDsiBuildMetadataSupplies DSi-only execution, service, storage, and policy metadata while retaining unmodeled extension bytes from an optional template. Physical program, digest, banner, and total-size fields remain layout-owned
 CNdsForge.NdsDsiDigestOptionsConfigures the optional DSi hierarchical HMAC-SHA1 tables that cover common NTR content and DSi-mode TWL Programs. Table sizes and offsets remain layout-owned so callers cannot supply internally inconsistent values
 CNdsForge.NdsDsiHeaderProjects DSi security, digest, memory, title, and save metadata while preserving the complete extension
 CNdsForge.NdsDsiIntegrityOptionsDefines which DSi authentication fields a build can honestly produce. Component HMACs use caller-selected key material, while an optional signing provider keeps private-key custody outside the image builder. The built-in ndstool policy remains explicitly a homebrew compatibility identity rather than a retail trust claim
 CNdsForge.NdsDsiKeyScramblerImplements the DSi 128-bit KeyX/KeyY scrambler in cartridge-register byte order. It contains only the public arithmetic and modcrypt slot prefix; callers remain responsible for the provenance of arbitrary key components
 CNdsForge.NdsDsiRsaPublicKeyRepresents one explicitly trusted RSA-1024 public key for DSi header authentication. Trust is supplied by the caller; constructing this value does not imply that a modulus belongs to Nintendo or any particular publisher
 CNdsForge.NdsEditPlanDescribes semantic preservation edits before any destination is created or truncated
 CNdsForge.NdsElfImportOptionsBounds ELF ingestion and controls whether ndstool-style Overlay program headers become definitions
 CNdsForge.NdsElfImportResultReturns a builder-ready executable plus any Overlay definitions decoded from the same ELF image
 CNdsForge.NdsElfProgramImporterImports executable ARM ELF32 files into builder-ready Program and Overlay definitions. Parsing is deliberately bounded and transactional: callers receive a complete result only after every selected range is validated
 CNdsForge.NdsExtractionOptionsControls component and NitroFS extraction
 CNdsForge.NdsFileConnects a byte-preserving FNT path and stable FAT identifier to lazily read cartridge bytes
 CNdsForge.NdsFileSystemProvides tree, path, and file-ID access to an image's NitroFS
 CNdsForge.NdsFileSystemBuilderModels structural NitroFS changes before ROM offsets and file identifiers are assigned
 CNdsForge.NdsHeaderProjects the common cartridge header into typed fields while retaining every byte needed for lossless work
 CNdsForge.NdsHeaderEditCollects validated mutable identity and card-control header fields
 CNdsForge.NdsImageBuilderAssembles a deterministic Nintendo DS Image from typed Programs, metadata, Banner, logo, and NitroFS tree
 CNdsForge.NdsImageBuildOptionsControls deterministic physical placement without mixing Layout policy into image metadata
 CNdsForge.NdsImageBuildResultReports the concrete Layout identities assigned while committing a Build Recipe
 CNdsForge.NdsImageComparerCompares hash-bearing manifests so tooling can distinguish content edits from identity and layout changes
 CNdsForge.NdsImageDiffCollects deterministic semantic, identity, and layout differences between two manifest snapshots
 CNdsForge.NdsImageEditorCollects explicit image changes and saves them without mutating the source
 CNdsForge.NdsImageManifestProvides a stable, content-addressed description of one parsed image for CI artifacts, review, and semantic comparison. The manifest contains no ROM payload bytes and cannot reconstruct copyrighted or private content
 CNdsForge.NdsKey1KeyTableHolds the 18 round words and four 256-word substitution boxes consumed by the DS KEY1 algorithm. The library deliberately has no built-in retail table: callers obtain the 0x1048 bytes from a source they are authorized to use and can keep that provenance outside build recipes and logs
 CNdsForge.NdsLegacyArm7HookReproduces ndstool's historical trainer layout by relocating ARM7, appending caller code and a header backup, and patching boot addresses with the historical staged CRC correction. It is isolated because modern builds do not need it
 CNdsForge.NdsLegacyArm7HookResultReports a detached legacy ARM7 hook image and the regions introduced by the compatibility transform
 CNdsForge.NdsManifestAllocationSnapshots every FAT record, including unnamed private Overlay payloads and otherwise unreferenced allocations
 CNdsForge.NdsManifestBannerSnapshots banner format, content, localized text, and physical placement without embedding rendered pixels
 CNdsForge.NdsManifestDsiSnapshots DSi-specific title, size, security-mode, and modcrypt layout metadata
 CNdsForge.NdsManifestFileSnapshots one named NitroFS allocation so path, numeric identity, layout, and payload can change independently
 CNdsForge.NdsManifestHeaderSnapshots common header identity, execution policy, and size claims in serialization-stable scalar fields
 CNdsForge.NdsManifestOverlaySnapshots one Overlay record and its resolved payload identity without conflating Overlay and File IDs
 CNdsForge.NdsManifestProgramSnapshots one executable's physical placement, runtime mapping, and content identity
 CNdsForge.NdsManifestRegionSerializes a half-open image interval without relying on value-type JSON conventions
 CNdsForge.NdsModcryptApplies the DSi AES-CTR transform with little-endian counter advancement. Encryption and decryption are the same operation; overloads support isolated buffers, arbitrary slices, and bounded caller-owned streams
 CNdsForge.NdsModcryptContextCaptures the AES-128 normal key and both HMAC-derived initial counters needed to transform DSi modcrypt areas. Every byte array is copied so a reviewed context cannot change when its source buffers are reused or cleared
 CNdsForge.NdsOverlayDescribes an ARM overlay-table entry and its referenced FAT payload
 CNdsForge.NdsOverlayDefinitionDescribes one Overlay record and its private Allocation when constructing a new Image
 CNdsForge.NdsProgramDescribes an executable program region and its runtime addresses
 CNdsForge.NdsProgramDefinitionSupplies one executable payload and the CPU addresses required to place it in a newly built image
 CNdsForge.NdsReadOptionsControls resource limits applied while parsing an image
 CNdsForge.NdsRegionIdentifies a bounded range of bytes in an image
 CNdsForge.NdsSecureAreaProvides pure inspection and KEY1 transformations for the conventional 0x4000-0x7FFF cartridge interval. Operations return new buffers and never rewrite a source image, header checksum, or caller key table
 CNdsForge.NdsSecureAreaInspectionReports secure-area presence, encryption state, and checksum evidence without modifying image bytes
 CNdsForge.NdsSemanticDifferenceDescribes one stable manifest path whose semantic value differs between two images
 CNdsForge.NdsValidationOptionsSupplies optional trust material and policy for validation checks that cannot be inferred from image bytes. Structural, CRC, digest-table, and development-marker checks remain available without external keys
 CNdsForge.NdsValidationResultContains all diagnostics produced by a validation pass
 CNdsForge.NdsWriteOptionsControls preservation-oriented image saves