MAMEDEV.org
  • Information
    • About
    • History
    • Legal
    • Logo
    • Contact
    • Resources
  • Downloads
    • Latest Release
    • Previous Releases
    • ROMs
  • Documentation
    • MAME Documentation
    • MAMEdev Wiki
    • Frequently Asked Questions
    • Emulated System Guides
  • Community
    • Official Forum
    • Support Forum
    • Chat on IRC
    • MAME on Twitter
    • MAME on Facebook
    • MAME on imgur
    • MAME on Instagram
  • Development
    • MAME on GitHub
    • Compiling MAME
    • Technical Specifications
    • Browse Source Code
    • Development Tools
  • Wiki Tools
    • Recent Changes
    • Special Pages
    • Upload a File
    • Edit Page
    • Login

How MAME Works
Revision as of 04:32, 11 July 2016 by Stiletto (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The following is a list of documents describing the internal workings (core) of the MAME emulator. Most are penned by Aaron Giles.

Contents

  • 1 Building MAME
  • 2 Writing for MAME
  • 3 For Driver Writers
  • 4 Core Internals
  • 5 CPU Emulation
  • 6 Universal Dynamic Recompiler
  • 7 Tips & Tricks

Building MAME

  • Building MAME using Microsoft Visual Studio compilers

Writing for MAME

  • Contributing to MAME
  • Submitting Source Code
  • MAME Coding Conventions

For Driver Writers

  • Game Drivers
  • Resource Management in MAME
  • DIP Switches in MAME
  • MAME Interrupt Function Review
  • Using MAME's tilemap system
  • Programmable Logic Devices in MAME
  • CPUs and Address Spaces
  • Address Maps

Core Internals

  • MAME Devices
    • MAME Device Basics
    • Device Interfaces
    • Advanced Device Customization
    • All About Devices (out of date)
  • Timers and timing
  • Filters and streams in the MAME Sound System
  • Save State Fundamentals
  • Using the GFX/TileMap viewer (F4)
  • How To Use the 'New' Renderer
  • Layouts and Rendering for MAME Artwork System
  • LAY File Basics - Part I

CPU Emulation

  • Virtual TLB
  • CPU Scheduling in MAME

Universal Dynamic Recompiler

  • Core Concepts
  • UML Architecture
    • UML Control Flow Opcodes
    • UML Internal Register Opcodes
    • UML Integer Opcodes
    • UML Floating Point Opcodes
  • Dynamic Recompiler Author's Guide
  • Back-End Author's Guide

Tips & Tricks

  • Executing Code Out of a Memory Region With a Read Handler
  • Checklist for Cleaning Up Drivers
  • Writing Messages to the Screen in a MAME Driver
Retrieved from ‘https://wiki.mamedev.org/index.php?title=How_MAME_Works&oldid=4762’


  • Copyright © 2022