The Final Replay

From ReplayResources
Revision as of 05:57, 27 March 2010 by JJ-TheBreaker (talk | contribs) (Created page with ' == Introduction == The Final Replay is a new ROM image to be used with the Retro Replay cartridge and the RR-Net ethernet adapter. This…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


The Final Replay is a new ROM image to be used with the Retro Replay cartridge and the RR-Net ethernet adapter. This ROM is an attempt to combine the advantages of the two major cartridges for the C64, the FC3 and AR6 and bring it to the Retro Replay. Unlike the existing Retro Replay ROM this cartridge does not build upon older cartridge ROM's but is written from scratch.


- Fastloader - Pre-defined function-keys - BASIC extensions - Freezer - Network device - Machine language monitor - Network server for data transfer (CodeNet)

Setting an IP address

Since the ROM has a server for data transfer inside, you need to set an IP address which is useable in your LAN. If your PC has an IP of you should set the IP of the C64 to

Use the SETIP.EXE tool to set the IP inside the ROM. Linux users will have to compile the setip.cpp file.

Example: "SETIP" (This will set the C64 IP to and the IP of the PC to

BASIC extensions

DLOAD - Load files from disk. DSAVE - Save files to disk. DOS - Send DOS command to drive, change device number or display disk directory. FLUSH - Clear entire memory. KILL - Disable cartridge. OLD - Make BASIC programs available again. MONITOR - Enter Machine language monitor. CODENET - Enter CodeNet server. $ - Hexadecimal numbers. NET - Redirect all Kernal calls to network drive. SETIP - Temporarily change the IP address. INFO - Show information about hardware and network addresses.

Network drive

The network device which comes with the TFR is accessible via device number 6. It can be used to access a directory tree on a PC with the server running. To use it, enter DOS"6" to change the device number to 6 or enter NET to redirect other device numbers to the network drive.

Before you can access the PC Harddisk, you need to start the Network Drive server. It is required to set a root path via the command line parameters. Example:

NETDRIVE -r "D:/c64/archive/d64/"

It is not possible to access any files outside this root path, so your other files are safe.

You may enter subdirectories via sending a DOS command: DOS"CD:(dirname)" You can also enter D64 files as subdirectory, but currently only read access is allowed. Currently no other DOS commands are supported. No deleting of files, no renaming of files and no formatting of disks.

ML Monitor

An important feature of most cartridges was their machine language monitor. Also this cartridge comes with one which is similar the the FC3 monitor. It is activated by entering the MONITOR command which is also available on the F2 key.

Monitor commands

M 200 300 - hex-dump memory from $0200 to $0300

I 200 300 - PETSCII-dump memory from $0200 to $0300

EC 200 300 - char-dump memory from $0200 to $0300

ES 200 300 - sprite-dump memory from $0200 to $0300

D 200 300 - disassemble memory from $0200 to $0300

A C000 LDA #$66 - assemble LDA #$66 to $C000

G 2000 - execute program at address $2000

X - leave monitor

F 3000 3800 AE - fill memory from $3000-$37FF with $AE

F 3000 3800 1 0 2 - fill memory from $3000-$37FF with pattern $01,$00,$02

T 1000 2000 8080 - transfer memory from $1000-$1FFF to $8080

Memory banking

O7 - enable BASIC ROM, Kernal ROM and I/O access

O0 - enable full C64 RAM access:

OD - drive memory access

O9 - drive memory access for drive 9

OV - VDC RAM access (C128 only)

OW - VDC register access (C128 only)

Almost all monitor commands refer to the currently selected memory. One exception is the G command which always refers to the C64 CPU and the T command which allows redirection of the target. Example

T 1000 1200 D:400 - will transfer the memory from $1000 to $11FF to drive memory location $0400

Number conversion

$123456 - convert hexadecimal number $123456 to decimal 1193046

  1. 12345678 - convert adecimal number 12345678 to hexadecimal $BC614E

Disk access/Drive access

  • R 12 5 C0 - read disk sector 18,5 to memory at $C000
  • W 1 4 10 - write disk sector 1,4 from memory at $1000
  • E 400 - execute program in drive memory at $0400

@I - send DOS command "I" to active drive

@9 - change active device number to 9

@$ - show directory

Illegal opcodes

£ - turn on/off illegal opcodes

Different number formats

The monitor allows binary, decimal and hexadecimal numbers as addresses and arguments:

LDA #%10110101 LDX #0 STA 400,X STA &49152,X INX BNE *-7


Scrolling through memory is possible in upwards and downwards direction by either using the cursor keys or via F3 and F5.

Network server CodeNet

CodeNet is a special transfer server which allows sending of binary data or program files directly into the C64 memory and sending of an execute command. You can use it for easy cross assembling. The server is started by entering the CODENET command (available on the F6 key).

CodeNet Description