--- title: "Mr Me!" id: 63204 type: "computer_media" slug: "mr-me" url: "http://localhost/computer_media/mr-me/" markdown_url: "http://localhost/computer_media/mr-me.md" published_at: "2026-01-30T21:13:39+00:00" modified_at: "2026-04-03T07:57:58+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2026/01/mr-me-1.png" excerpt: "Pacman like video game." category: - name: "Archived Media" slug: "archived-media" taxonomy: "category" url: "http://localhost/category/archived-media/" post_tag: - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "TS 2068" slug: "ts2068" taxonomy: "post_tag" url: "http://localhost/tag/ts2068/" model: - name: "Timex/Sinclair 2068" slug: "ts-2068" taxonomy: "model" url: "http://localhost/model/ts-2068/" indiv: - name: "Eric Boisvert" slug: "boisvert-eric" taxonomy: "indiv" url: "http://localhost/indiv/boisvert-eric/" genre: - name: "Game" slug: "game" taxonomy: "genre" url: "http://localhost/type/game/" media_contents: - id: 63048 title: "Byte Power February 1987" type: "computer_media" url: "http://localhost/computer_media/byte-power-february-1987/" media_type: "Program" programmers: - name: "Eric Boisvert" slug: "boisvert-eric" taxonomy: "indiv" url: "http://localhost/indiv/boisvert-eric/" mediadate: "1987" producer_company: - id: 25181 title: "Byte Power" type: "company" url: "http://localhost/company/byte-power/" images: - url: "http://localhost/wp-content/uploads/2026/01/mr-me-1.png" - url: "http://localhost/wp-content/uploads/2026/01/mr-me-2.png" article_media: - id: 63089 title: "Mr. Me!" type: "article" url: "http://localhost/article/mr-me/" media_type_tags: "Game" --- This program is a loader stub for a machine code game called “Mr Me,” written by E. Boisvert and published by Byte Power in 1987. The BASIC portion sets the border, ink, and paper to black, then clears memory to address 29999 before loading a CODE block into address 42623. After loading, it checks PEEK 23681 (the system variable LAST K, used here as a flag to detect whether the machine code loaded successfully) before either running the game or falling back to a LIST and STOP. Line 9999 provides the complementary save routine, storing both the BASIC loader (with autostart at line 9000) and the 22,800-byte machine code block at 42623. The machine code occupies the upper RAM area above the BASIC, a common placement strategy to avoid conflicts with the BASIC system area. *** ## Program Structure The program consists of four functional lines: 1. `1` — REM block acting as a title/credits banner, naming the game “Mr Me” and crediting E. Boisvert / Byte Power 1987. 2. `10` — Immediately jumps into machine code via `RANDOMIZE USR 42623`; this line is only ever reached if the machine code is already resident (e.g. during development). 3. `9000` — The main autostart loader: blanks the display, loads the CODE block, then validates and runs. 4. `9010` — `RUN` re-enters from line 1, eventually hitting line `10` to jump into machine code. 5. `9999` — Master save routine for both the BASIC and the CODE block. ## Machine Code Usage The machine code block is 22,800 bytes long and loads at address `42623`. This places it in the upper portion of the 48 KB RAM map, well above the BASIC system area and UDG table. Entry is via `RANDOMIZE USR 42623`, which calls the first byte of the loaded code as a Z80 subroutine. `CLEAR 29999` sets RAMTOP below the machine code region to prevent the BASIC system from encroaching on it. ## Notable Techniques and Observations - Setting `BORDER 0: INK 0: PAPER 0` before loading produces a completely black screen during the tape load, hiding the loading border stripes — a common commercial presentation trick. - Line `10` with `RANDOMIZE USR 42623` is separated from the loader so the program can be re-entered cleanly via `RUN` (line `9010`) after the code is already in RAM. ## Source Code ``` 1 REM M R M E written by E Boisvert ©1987 BYTE POWER 10 RANDOMIZE USR 42623 9000 BORDER 0: INK 0: PAPER 0: CLEAR 29999: LOAD ""CODE : INK 7: IF PEEK 23681=0 THEN CLS : LIST 9999: STOP 9010 RUN 9999 SAVE "Mr Me" LINE 9000: SAVE "Mr Me"CODE 42623,22800: VERIFY "": VERIFY ""CODE ```