Reverse Engineering SimpleText: Modifying Window Size in Classic Macintosh Software
By
mmoogle
Toasted just enough. A reliable bake, gently seasoned.
Summary
The article details the author's technical journey to modify SimpleText, a classic Macintosh text editor, to open with a smaller window at startup. What initially seemed like a simple patch requiring only constant value changes turned into a complex reverse-engineering process involving ResEdit, code resource disassembly, and understanding 68K assembly language. The author shares their learning experience about Macintosh system calls, resource forks, and the challenges of modifying legacy software.
Key quotes
· 4 pulledSomeone asked to have SimpleText open a smaller text window at startup. Initially, I assumed this would be a fairly easy fix by just overwriting a few constant values in SimpleText code.
It turned out to be a pain -- but I learned a lot along the way.
You need to have the code editor (from one of the Apple developer CDs) in your ResEdit preference file in order to disassemble code resources within ResEdit.
Then, open each 'CODE' resource of SimpleText and search for _SizeWindow (A91D).
You might also wanna read
C64UX v0.7 Release Adds Login System, Themes, and Boot Sequence for Retro Shell Environment
C64UX v0.7 release introduces significant enhancements to create a more complete retro computing shell experience. Key features include a us
ISOCD-Win: Windows Tool for Creating Bootable Amiga CD32 and CDTV ISO Images
ISOCD-Win is a C#/.NET Windows application that serves as a replacement for the native Amiga ISOCD tool. It creates bootable ISO image files
Blaze: A Rust-Based DEC VT420 Terminal Emulator
Blaze is a terminal emulator written in Rust that emulates the DEC VT420 terminal and other systems. It uses the i8051 emulator crate and Pi
NMH BASIC: A Compact BASIC Interpreter from the Early 1990s
NMH BASIC is a small BASIC interpreter written in the early 1990s that the author considers one of their coolest programs due to its compact
BebboSSH: SSH2 Implementation Suite for AmigaOS with Modern Cryptography
BebboSSH is an SSH2 implementation suite for AmigaOS (m68k architecture) that provides client/server functionality and SFTP with modern cryp
GitHub Repository: Awesome List of J2ME (Java 2 Micro Edition) Resources
This is a GitHub repository README for an 'awesome list' dedicated to Java 2 Micro Edition (J2ME), a Java specification for older mobile dev
