MemMan
This page was last modified 14:54, 16 August 2021 by Mars2000you. Based on work by Gdx and Manuel and others.

Contents

Description

MemMan is a advanced Memory Manager for MSX2 with at least 128kB memory mapper. It reserves 80kB for the 'standard' working of the computer. Since version 2.0, it has support for handling of TSR (Terminate and Stay Resident) programs.

This utility is provided in 2 versions: the binary MEMMAN.BIN and the MSX-DOS file MEMMAN.COM. Since version 2.3, MemMan adds several instructions to BASIC (see MemManTSR BASIC). Latest version is v.2.42.

History

MemMan was developed by the Dutch MSX Computer Magazine (mainly by Ries Vriend and Ramon van de Winkel) and released as Public Domain. It was first presented in issue 39 of August 1990. In subsequent issues they published instructions for how to use it and updates to MemMan.

After the initial version, a new team - the MSX Software Team (MST) - was created to maintain MemMan and develop other MSX programs.

Here's the history of the different versions:

Version Release Date MCM issue Notes
1.0 1990-08 Not released by MCM
1.1 1990-09 MCM40 Fixes a bug with two memory mappers in combination with MSX-DOS1
2.0 1991-03 MCM45 Support for TSRs
2.1 1991-04 Fixes a bug with Kanji mode on the Turbo R (not released by MCM)
2.2 1991-05 MCM46 Fixes a bug concerning TSR management on system with multiple memory mappers
Fixes a bug when freeing page-specific segments
2.3 1991-09 MCM49 Additional BASIC instructions
Fixes a bug with memory mappers of which the I/O ports cannot be read
2.31 1992-03 MCM52 Fixes a bug in TSR loading on MSX-DOS1
Fixes a bug affecting TSRs that switch memory in page 8000h~BFFFh
2.42 1992-12 MCM57 Usability updates to TV.COM, and CMD HELP added.


Installation

  • from MSX-BASIC: BLOAD"MEMMAN.BIN",R
  • under MSX-DOS 1 or 2: enter MEMMAN on the command line

By default, both versions go to MSX-BASIC after installation. Since version 2.0, the MSX-DOS version can be installed with additionnal commands (example: MEMMAN _SYSTEM@TL CAPS@ to go back to the command line and load the TSR program CAPS.TSR).

Note: If you want to use the RAMDISK under MSX-DOS 2 or Disk BASIC 2, it's recommended to follow this order: first install MemMan, then create the RAMDISK. This way MemMan can give the memory which becomes available after resizing the RAMDISK to other MemMan applications.

Configuration

A configuration tool is included, allowing to change several settings, separately for the binary version and the MSX-DOS version.

In versions 1.0 and 1.1, it is a MSX-BASIC file: CFGMMAN.BAS. It allows only to change the command line that will be executed after installation (for example to run a specific program).

Since version 2.0, it is a MSX-DOS file: CFGMMAN.COM with more options:

  • default command line (will be ignored when MEMMMAN.COM is installed with additionnal commands)
  • heap size for the TSR programs (128 bytes by default)
  • maximum number of TSR programs which can be loaded at the same time (15 by default)
  • maximum number of hooks which can be bent by TSR programs (30 or 50 by default according the used version)
  • maximum recursion depth for TSR programs (6 or 8 by default according the used version)

TSR Programs

Most TSR programs work under MSX-DOS 1 or MSX-DOS 2. However, a few TSR programs can only be used under MSX-DOS 2.

TSR DOS ID-name Description BASIC instructions Related application
(built-in) 1/2 MST TsrUtils MemMan TSR tools ATTR$ FT
CMD TK
CMD TL
CMD TV
TV.BAS
TK.COM
TL.COM
TV.COM
ALARM.TSR 1/2 RWi Alarm Alarm SET TIME SETALARM.COM
CAPS.TSR 1/2 MJVcapsblink Caps blink and key click
CHRCODE.TSR 1/2 RWi ChrCode Direct entering of ASCII codes
(CTRL + number)
COLOR.TSR 1/2 MJV ColorTsr Inverse colors CMD COLOR
DUMP.TSR 2 DUMP MEMORY Memory dump on disk
(from 8000h to FFFFh)
when pressing CTRL+ESC
ET.TSR 1/2 Display of error messages in Dutch
FONTS.TSR 1/2 Switch between standard and
FAC font
KLOKJE.TSR 1/2 Time display with F1 key
ICP7.TSR 1/2 MCM's ICP Checker for typing listings from
MSX Computer Magazine (NL)
CMD ICP OFF
CMD ICP ON
ICP7.BIN
INSERT.TSR 1/2 Insertion with ESC key
(instead of INS key)
JANSI.TSR 1/2 MST jANSI ANSI emulator JDUMP.COM
MIDIKLAV.TSR 1/2 Play MIDI instrument with
Philips NMS 1205 Music Module
and NMS 1160 music keyboard
MOUSOR.TSR 1/2 Control cursor key input with
the mouse
MSXALT.TSR 1/2 JvdM MSXALT Alternative sets of function keys
(with SELECT key)
ALTLAD.COM
(MSXALT.TSR requested)
PB.TSR 1/2 MJV printbuf Printer buffer ATTR$ FRE PRINTBUF
CMD CLEAR PRINTBUF
PRINT.COM
(PB.TSR is requested)
SCRFADE.TSR 1/2 RWi ScrFade Screensaver
(not for Kanji screens)
SETFADE.COM
(SCRFADE.TSR requested)
SCR0DUMP.TSR 1/2 Screen dumper
SHIFT.TSR 1/2 JvdM SHIFT Shift always active
(also when CapsLock is active)
STRACE.TSR 1/2 STR Sp-Trace Super-TRACE for BASIC programs SET STROFF
SET STRON
TRACER.TSR 1/2 Trace BASIC programs CMD TRACER
TSR.TSR 1/2 Quick-B M.O. Back to BASIC from DOS with
TAB key
TSR.BIN
YZ.TSR 1/2 Switch for the Y and Z keys


TSR Development KIt

This kit is conceived as help for creating TSR programs that can be managed by MemMan. It is composed with

  • two TSR frame files for GEN80 or M80 assemblers (TSRFRAME.GEN and TSRFRAME.MAC)
  • two corresponding BAT files to generate the TSR programs (GTSR.BAT and MTSR.BAT)
  • the TSR creator (LT.COM)

Environment

  • Computer MSX2/2+/Turbo R with at least 128kB Memory Mapper
  • Disk Basic / MSX-DOS(2)

Links