CyberpunX Replay Changelog

From ReplayResources
Jump to navigationJump to search

There is no such thing as a Retro Replay ROM from us!
Hardware and Software are independant from each other and

possibly there were names such as CyberpunX Retro Replay circulating - but from now

CyberpunX Replay be thy name! :) Fuck Retro - oldschool is the way to live!


  • In reverse order listed below are the changes which happened over time to an oldschool Action Replay MK5.
  • All of these versions as well as more shitty old 32kb hacks of the AR rom can be found on the Retro_Replay_binaries package.
  • Versioning over decades is an aging process - it was never really intended to turn the original MK5 from Beta X (up to 3.x) to VERSION 3.x an process that on - shit happened :)


Known Bugs

  • BUG reported by Jack Alien & HOK (reproducable on plain AR and new RRs):
    • enter monitor
    • write a little ML save routine (which saves some area, ffba, ffbd, ffd8)
    • G start (file should be saved fine)
    • hit F3 for directory (RetroReplay ROMs crash HERE)
    • @s:file (ActionReplay V6 crashes HERE) ... to be fixed - happens only on monitor ! (sys routine, f3, etc in basic seems to work fine)
 To reproduce it load a file from a device != 8, send "UI" and then check the error channel.
 E.g. @9 - /file - @UI - @9 leads to "device not present".
 The same will happen on fast save and fast format. The current ROM has space to fix the issue but the layout of the routines leaves too many error cases on which the problem would not reliably get fixed. The alternative, to M-W after each such operation doesn't sound too well either. So be it - problem will remain for the moment :)


Flashing

NOTE: The CyberpunX Replay has the TASS command. ROMs utilising the TOOL command were originally created to deliver flasher software to end users who do not have the possibility of transferring files from PC. Future releases will not contain the flasher program anymore.

The most recent flasher versions can be found at:

https://svn.icomp.de/svn/replay/trunk/ and Flash Utility V3.8 Patch @ CSDb


Version 3.99 (64kb Rev.) (in the works)

even more time passed and 32kb ROM support for old Action/Nordic Replay hardware is now dropped completely.

  • Source code reorganisation started - added long standing change proposals by DocBacardi (leading to wicked things ...)
  • Cosmetic changes and text updates! Some more keys added to several menus extending e.g. R/S for abort or F-Key mapping on freezer menus (F8 or M for monitor, other places for colors).
  • Re-added VIEW SPRITES with some small changes (just for Bacchus who is bugging for ages about it)
  • Re-added FILE COPIER with the previously removed WARP option changed to a REPLACE FILES option
  • Added detection routines for PAL/NTSC, REU size, machine, kernal type and clockport add-ons - mostly to be utilised still
  • Removed RENUMBER from basic toolkit, fixed OLD - seems nobody uses these anyhow
  • PLIST/SLIST fixed and LIST changed to extended behaviour - now shows problematic control characters better meaning a built-in LISTKNACKER
  • Fixed FIND for large basic programs
  • Compatiblity fixes for SpeedDOS
  • Compatiblity fixes for SD2IEC devices
    • /$ %$ and other load commands were changed on Beta 2 introducing an incompatibilty with these newish devices. Reverted to e.g. fix that infamous filebrowser (fb64.prg)
    • JiffyDOS is used for LOAD/VERIFY, Directory, Change Device as fall back for IEC-Devices supporting it - FROM CART ROM - No C64/C128 Jiffy Kernal required!
There is of course more to come, e.g. SAVE, ahem :) - AND all the @-commands need testing. Esp. SCRATCH is prone to crash but ALL need to be tested put on a table, compared ...
NEEDS to be worth it for the sheer amount of space this code eats!
On normal detection of a drive the standard track loader using the Replay RAM will be used (or the "slow loader" whenever "@K-" was used to enable it.)
Failed detection should lead to JiffyDOS fall back which also allows loading under I/O and kernal from SD2IEC/UIEC and such.

Changes to the normal version: 
   - takes advantage of the ROM included JiffyDOS routines
   - Joystick controls disabled
   - aborts on repeated drive errors
   - CBM-sub-directory support
Supported keys:
 Cursor up/down    - select entry
 Cursor left/right - previous/next page
 F5 / F7           - previous/next page
 F6 / F8           - jump to first/last entry
 Enter             - LOAD"FILE",DEVICE,1 + RUN  or enter directory/image/sub-directory
 CBM + Enter       - LOAD"FILE",DEVICE + RUN  or enter directory/image
 DEL               - exit directory/image
 Arrow Left        - exit CBM sub-directory
 D                 - change drive
 Q / Run/Stop      - Quit
 S                 - Sort buffer (Reloads when pressed again to UN-sort
  • File copier selection now properly skips large files >999 blocks so you have a chance to copy regular files listed afterwards (reported by svolli, thanks!)


  • more?

Version 3.8P + TMP 1.2 patched (64kb Rev.) (2020-11-06)


Version 3.8P + TMP 1.2 patched (64kb Rev.) (2006-10-12)

  • CyberpunX Retro Replay ROM V3.8p (and V3.8b) + Turbo Macro Pro 1.2 by Devia based on 3.8P (with notes on how to do further replacements)
    • NOT a CyberpunX release - listed here for completeness


Version 3.8Q (64kb Rev.) (2007-05-05)

  • Retro Replay ROM V3.8q jockstraps´ PAL only release of 3.8P modified to support CodeNet.
    • SSGET (silver surfer stub) was thrown out.
    • shift+run/stop starts codenet (also startable by writing NET)
    • NOT a CyberpunX release - listed here for completeness


Version 3.8P (64kb Rev.) (2006-01-08)

  • Retro Replay ROM V3.8p hannenz´ PAL only release of 3.8B fixing a bug on the flasher.
    • NOT a CyberpunX release as stated - listed here for completeness


Version 3.8B (Beta) (64kb Rev.) (2004-11)

  • time has passed --- quite a few things got changed - wonder where the list went...


Beta 3.8A (Alpha) (64kb Rev.) (2002-06-23)

  • REU compatibility gained. IO usage was moved to IO1, therefore needs new hardware or new VICE
  • SpeedDos Drive Code collision fixed
  • 1581 format routine working again
  • all warp loader/saver/scratcher occurences cleared - makes space for more interesting options aswell as JD compatibility
  • SilverSurfer detection added - full support later
  • numerous fixes on the monitor (many thanks to Ninja for his great patches !)
  • improvements on color picking and some basic routines
  • Fixed: crash on some disk commands when no drive is connected.
  • User-configurable area defined - the FlashUtility (0.05+) will allow you to change some aspects of the ROM here
  • fixed a bug when freezing an already frozen computer which lead to a crash
  • TURBO Fastloader works now in freeze-mode on RR hardware and 64kb ROM versions!
  • fixed the drive check routine (to be upspeeded on IEC routines re-work)
  • added Copyfaults (I)FLI-Ripper - PAL/NTSC fixed
  • SPLASHSCREEN added !
  • $AE/$AF - the pointers to the end adress of a loaded program aren't destroyed anymore
  • FAST SAVE NTSC bug fixed!


Beta 3.1 (32/64kb Rev.) (important bugfix) (2002)

  • broken J command fixed
  • added a new monitor command: W (no options)
    • This only works in freezemode monitor and displays the freeze and breakpoints to you. Freezepoints are colored white, breakpoints are colored gray. a disassemble of the shown locations will show you the jsr $dxxx for the freezepoint or a BRK and (if set basically correct) 1 or 2 junkbytes, which are leftovers from the original command. Nevermind, when restarting programs the locations will be reset to their original value and the program is restarted as it should be. Just make sure (as noted in the manual) to pass the freezepoint correctly and not crash into it. The JSR to the Freezepoint may be changing depending on the ROM version. You can assemble the JSR manually, but should check for the correct value using a normal SF (Set Freeze) on the freeze monitor.
  • Improved ZAP to work much better. Now the adresses from $0800 to $0803 are restored after zap, while clearing of lower pages was improved. This leads into basically this: load a program with fastload, zap and run it ... improves compatibility a little more. BEWARE though, the pointers for basic program ends and variables will not be set, so it is recommended to load very tricky basic stuff after ZAP without the fastload or after normal reset (only if the program refuses to work with AR/RR all this applies ofcourse :) )


Beta 3 (32/64kb Rev.) (2001)

Evaluated the source code to 64 KB romsize. Necessary changes towards the bankswitching routines were made and they worked fine - NOT - a major flaw went unseen for a very long time ...

  • Implemented FIND !!! Thanks again to Arndt Dettke for the sources. The MANUAL contains a closer look at the command.
  • Fixed the fastsave routine! Now filling a disk with 664 blocks works fine.
  • Changed the monitor-internal directory routine to go by the same routine used by the ordinary fastload (F3 on direct mode). This changes:
    • monitor directory display doesn't reset to the root directory on 1581, but displays the correct sub-directory as expected.
    • command stacking using $(device8-30) works as well (but not much further).
    • saved some bytes...
  • DEL command (in basic) fixed to work again. Was broken on Beta 2 already, but no reports. Is nobody using basic anymore ?
  • added TASS... 64 KB only. The basic command TASS envokes turbo assembler 5.2 (some autodrive hack which has more or less proven to be stable). The program is copied to $9000-$cf00 and called with a JMP $9000. nothing is optimized or added in an AR way at all. The good thing though: killing TASS and re-envoking it doesn't kill your source.
  • fixed broken filename on saving koala pictures
  • added RENUMBER for basic toolkit
  • fixed the MERGE command to work again. was broken on Beta 2 due to a resource bug.
  • made the POKE function on the freezer accept hex/dec entries. possible combinations are:
    • any plain decimal combination as used in the original basic command
    • combinations of decimal and hex like: $ff,250 - 4096,$fe - $fff,100 the hex numbers are checked here for correct size. the 16 bit value before the comma can have 1 to 4 chars, the 8 bit value 1 or 2 chars.
    • complete hex entries - incorrect entries will result into an error message or will be ignored.
  • After FREEZE+RESTART channel 3 of SID was always disabled - fixed
  • Added a little delay loop before checking for CTRL and CBM straight after reset. Mainly to be able to press one of these keys before the emulator has finished the reset. While CCS allows to have a key pressed during the reset routine, VICE doesn't seem to have that option (yet).
  • A deeper digging into the freeze routine made me check the $dd00 related part of it aswell. (Thanks to Krill/Plush for some hints and pointing me to an obvious crap up.) Basically we changed the behaviour of the screen switching routines and of the reset/freeze-setup routine to not touch the upper bits of $dd00 to prevent freezed loaders being crashed when restarting. This doesn't happen to all loaders and doesn't happen always, so it's a little tricky to test this. Nevertheless stability on freezing wicked stuff should increase a little. On the other hand, fuckups everywhere! Test, test, test ... :)


Beta 2 (32kb Rev.) (2000)

  • All Tape occurences removed. Loading from tape has to be done using the kernal functions now
  • Sprite Viewer removed - The Editor will be added as soon as it's finished
  • A newly introduced bug on the F4 key removed ... leading into a new command as side-effect:
    • new disk-command function added: @#(device) changes device without reading the error channel.
  • Fixed all disk command related operations to work from device 8-30 (hopefully)
  • Found the Collision Killer to be faulty. Basically it was always looking for BOTH collision types, instead of the chosen one. FIXED.
  • Toolkit, Freeze Save Menu and device changes in freeze menu are now changed to work on device 8-30 aswell. These menus will scan the IEC bus for available devices though. If it fails on one of your hardware pieces, contact us!
  • The state of freezing (Monitor mode or menu mode) is now remembered correctly. This means, freeze, Monitor, Exit, Restart and Re-freeze will take you to the freeze menu, instead of the monitor. On the other hand, freezing a program started from the freeze mode monitor (G, G XXXX), will take you directly back to the monitor.
  • Wildcard Hunt for monitor added (See manual Section 7.0)
  • Fixed a bug on the fastformat option. Was in Beta1 already, sigh
  • found an NTSC rom image. Fixing the current code to work on NTSC only took an hour, but PAL and NTSC on the same rom is somewhat tricky. Anyways, it's a few bytes fix and now we are WORLDWIDE. :)
  • /$ %$ and other load commands acted like LOAD"$",x,1 - fixed to display dir now.
  • Minor fixes on monitor and basic behaviour
  • Fixed the device change lasting forever bug on no-drive systems

Beta 1 (32kb Rev.) (1999) (unreleased)

32 KB REV. Beta 1

Stuff that was REMOVED completely:

  • Printer Dump on Freezer
  • LOADER Saving on the Utility Menu
  • Novaload Transfer Message
  • Tape Slideshow
  • (T.*)-Extensions (from tape removed). Extensions (E.*) from disk of course remain.
  • Are You Sure ? got lost


Stuff that was ADDED, PATCHED, FIXED, IMPROVED:

  • ZAP is back ... FUCK CBM :))) (See Section 6.5)
  • SAVELAND in Freezer. Check it out !
  • Various changes on the Texteditor (Check the F-Keys)
  • F4 setting on the Fastload Toolkit now changes Devices, not colors.
  • SHIFT-Run/Stop does %0:* (CR) and loads directly off Device 8 on powerup.
  • File and Disk copy can be quit using R/S on the menu aswell.
  • @H will re-read the drive buffer and displays the correct header without @I.
  • @= checked for 1581 and 1541 - FD uses the same ZP addies. Should work.
  • Various changes on the monitor affecting: Fill, Compare, Assemble, I/I*-Display and Set/Clear Freeze- and Breakpoints. See Section 7.1 and 7.2 of the manual!
  • Pokefinder now searches for any value between 1 and 255.
  • New Keys at the Powerup screen (See manual)
  • d011 speedup on reset and config
  • Saveland Bitmap Saver fixed ... silly bug



Next

  • Re-write the IO-Switching routines, provide proper API to functions (a 4.x branch will be the outcome)
    • POSSIBLY even gain SuperSnapshot compatibility?
  • Port all the good stuff to the new API
  • continue work on the filecopy selector (postponed until 4.x - needs rewrite)
    • Improve filecopy to work with more than 32 files at once and be more comfortable. This fileselector will probably be used for TASS,etc as well then.
  • add Codenet - D64 Send/Receive (without destroying C64 RAM)
  • SilverSurfer receive routines (64 KB roms ONLY !) - plain ssget is available. RS-232 support is currently sort of frozen.
  • Ninja plans to improve the load routines to do automatic-dir changes and some more small stuff :)
  • Danzig will provide a Sprite/Char-Editor :)


More stuff we are planning TO DO:

  • Fix load/save in freeze mode to handle files from $0000-$ffff
  • FD fastsave compatibility
  • fix a bug reported by Frank Kontros (again...hehe) which affects the track/sector ID. Frank supplied the patch already, so it will be done soon.
    • Ninja checked this out a little closer and we took a closer look at the routines aswell, but the necessary changes would eat a lot of memory. A work-around bugfix is still planned though. Stay tuned.
  • Add a Lock/Unlock File and Disk function (@L)
  • Add a new directory routine which displays Track/Sector and Starting Adress of Files without loosing Ram contents
  • Add a new format routine for 1541 disks, which displays the number of unusable sectors, aswell as their location and which automatically maps out these sectors. This idea is coming from Graham, who told me he got that routine done already... :)
  • illegal opcodes for monitor --- yieks
  • Add Turbo Assembler Macro?
  • Advanced Disk Monitor
  • and probably as its 2021 already - some filebrowser for your new age devices...