Download the latest build SMS-Lemmings-Editor.zip
Sega Master System

SMS Lemmings Editor

A clean, self-contained level editor for the Sega Master System version of Lemmings, built by Squidgy to replace the original Mappy-based workflow with a simpler modern tool.

Portable EXE Windows 10+ (64-bit) Bundled build pipeline Custom brush workflow

Getting started

  1. Unzip the contents of the download.
  2. Run Level Editor.exe.
  3. In the BUILD tab, choose the included .asm project file and levels.txt.
  4. Open or drag-and-drop an .mlm file onto the canvas to begin editing.
  5. When finished, click ⬆ Inject Level and then 🔨 Convert + Compile ROM.
The editor will try to detect the correct tileset automatically, though Sand tilesets can occasionally confuse it. Your compiled lemmings.sms is written to the same folder as your .asm file.

System requirements

OS: Windows 10 or later (64-bit)

Disk space: about 200 MB

RAM: 512 MB or more

Installation: none required

What it does

Draw and edit SMS Lemmings levels, manage brushes, load reference PNGs, inject data into a project, and compile a testable ROM without external tooling.

Tools & shortcuts

KeyTool
BDraw
EErase
FFlood fill
SSelect
TTrap placement
DDeselect active brush
RToggle reference image visibility

Drawing

ActionEffect
Left-click / dragDraw with active tile or brush
Right-clickErase with any tool
Delete / BackspaceErase current selection
EscapeCancel paste mode

File, edit & view

ShortcutAction
Ctrl+OOpen MLM file
Ctrl+EExport MLM file
Ctrl+ILoad custom tileset image
Ctrl+SOpen sessions menu
F12Revert map to last saved state
Ctrl+ZUndo
Ctrl+Y / Ctrl+Shift+ZRedo
Ctrl+CCopy selection
Ctrl+VPaste
Ctrl+BSave selection as a new brush
Ctrl+Shift+BOverwrite selected brush
+ / =Zoom in
-Zoom out
Ctrl+Alt+ScrollZoom with mouse wheel
Alt+DragReposition reference image

Level data

Level properties are managed from the LEVEL tab in the right panel and can be imported or exported as .ini files.

FieldNotes
NameLevel name shown in-game
RatingFun / Tricky / Taxing / Mayhem / Extra 1–4
Level Number1–30 within the chosen rating
TilesetSelected map tileset
Fall Distance0–255, active only for Extra 1–4
MusicTrack override 1–17, or 0 for the default rating track
Trap Type / X / YTrap placement, active only for Extra 1–4

Tileset IDs

IDTileset
0Grass
1Sand 1
2Fire
3Ice
4Brick
5Unused
6Sand 2
7Sega

Brushes

Brushes are reusable tile patterns saved per tileset.

  1. Choose the Select tool with S.
  2. Drag a rectangle over the map.
  3. Press Ctrl+B to save a new brush, or Ctrl+Shift+B to overwrite the selected one.
  4. Click a brush in the left panel, then draw as normal.

Brushes live in %AppData%\Roaming\MLM Editor\brushes\ and can be shared as .json brush packs.

Reference image

Load any PNG as a reference overlay with the 📁 Load button in the left panel.

The overlay starts at 100% scale, can be moved with Alt+Drag, and toggled on or off any time with R.

Tilesets

Select built-in tilesets from the toolbar dropdown, or press Ctrl+I to load a custom PNG tileset from disk for editing reference.

To replace a built-in tileset, swap the matching PNG inside the tilesets/ folder and rebuild the application.

Build pipeline

The BUILD tab includes a fully self-contained compile flow, so no separate Python setup or external tools are needed.

ButtonAction
⬆ Inject LevelWrites the current map and level data into the selected project
🔨 Convert + Compile ROMRegenerates level data, patches the ASM, assembles, and links
The editor bundles the WLA-DX tools (wla-z80 and wlalink) and runs them automatically.

Current limitations

  • Custom tilesets are supported in the editor as external PNG references, but not yet in-game.
  • Maps support up to 4 entrances and 3 exits.
  • Trap settings and custom fall distance only apply to Extra 1–4 levels.
  • Tiles in the far-left column can sometimes clip in-game, so leaving that column empty is recommended.