Skip to content

A deterministic simulation kernel designed to model time and execution order explicitly. Provides a strict, reproducible foundation for cycle-accurate hardware simulation, networking, and real-world hardware interaction.

License

Notifications You must be signed in to change notification settings

MokshDX/mythril

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mythril

Mythril is a deterministic simulation kernel designed to model time and execution order explicitly.

Its purpose is to provide a truthful, reproducible foundation for hardware simulation—where correctness, ordering, and timing are enforced by construction rather than approximated by convention.

Mythril does not emulate any specific system. It defines the rules of simulated reality.


Core Principles

Time Is Explicit

Mythril owns simulated time.

Time advances only when explicitly authorized by the kernel. There is no dependence on wall-clock time, operating system scheduling, frame pacing, or implicit batching.

A kernel tick represents one indivisible advancement of simulated time. Any relationship between ticks and hardware-specific units (cycles, dots, samples) is defined externally by the systems being modeled.

Ordering Is Semantic

Execution order is deterministic and observable.

Components are stepped in a stable, explicitly defined order. This ordering is a semantic property of the simulation and is treated as part of time itself, not as an implementation detail.

This enables correct modeling of:

  • bus contention
  • interrupt visibility
  • race-like hardware effects
  • link cable and signal timing

Determinism First

Given the same inputs, Mythril produces the same behavior—bit-for-bit, run after run.

This guarantees:

  • reproducible execution
  • deterministic replay
  • reliable debugging
  • consistent network synchronization

What Mythril Is Not

Mythril is not:

  • an emulator
  • a scheduler
  • a framework
  • a frontend
  • a timing convenience layer

It has no knowledge of:

  • systems
  • CPUs
  • frames
  • games
  • cores
  • performance modes

Policy does not belong in the kernel.


Hardware-Faithful Interaction

Mythril is designed to support hardware-faithful interaction beyond a single machine.

This includes, but is not limited to:

  • link cable–style communication
  • online connectivity modeled as physical I/O with latency
  • deterministic synchronization across machines
  • interaction with real hardware and cartridges

Networking is treated as hardware behavior, not as state synchronization.


Scope and Status

Mythril is intentionally minimal.

Current focus is on:

  • correctness of time ownership
  • deterministic execution order
  • strict lifecycle semantics
  • long-term architectural stability

Features such as diagnostics, tracing, and tooling may be added later, but core semantics are designed to remain stable.


Design Philosophy Summary

If a simulation lies about time, it has already failed.

Mythril exists to ensure that simulated hardware can participate in the world as if it were real hardware itself.

About

A deterministic simulation kernel designed to model time and execution order explicitly. Provides a strict, reproducible foundation for cycle-accurate hardware simulation, networking, and real-world hardware interaction.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages