Amstrad Action December 1990 Type-Ins

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search

The following listings were published in the December 1990 issue of Amstrad Action:

Type-Ins

  • Madballs (Lee Barwick)
  • Fake Rom (Steve Smith) NB 6128 only (requires extra memory)
  • Fastbrot (D Catchpole)

Notes

  • Madballs: Controls are joystick or cursor keys and fire to jump
  • Fake Rom: These are the notes from the magazine

It takes any machine code program and stores it in extra RAM. (That's why it's restricted to 6128s only). It then pokes a small routine into address &bf08. The machine can now be reset and other programs loaded and run. A call to &bf08 will now copy the code from extra ram and re-initialize it. The routine at &bf08 is fairly robust and will survive most forms of soft reset including Control-Shift-Esc, Call 0, and the Multiface Reset. It will not survive the running of most commercial games or any programs that make use of extra RAM.

The type of program that can be used is subject to the following constraints: It must load to &8000 or higher, and it must be 9K or less in length.

Instructions for use.

1. Type it in: The machine code is not checksummed so use TYPE-WRITER to make sure you get it right.

2. Save it onto a disk containing the program you wish to save to extra ram.

3. The filename must be 8 characters with a full extension. Use |REN to change it if it isn't.

4. Run FAKEROM.BAS. Follow the prompts.

5. The code now can now be recalled after reset or running another program by CALL &bf08.

Download

Screenshots

Correction

For the Madballs game, the edition AA published in issue 63 of Type-ins is a very substancial game comprising of 3 Levels as well as 3 Difficulty Settings, unfortunately after large amount of playing, it reaches a Memory Full error:

320px-Madballs_Memory_Full_Error.png

The error is occurring due to some uses of GOSUB which led to a Subroutines which may or may not find a RETURN. It's when it's not finding the RETURN is the problem due to some IF statements which become TRUE, once those are TRUE they essentually do a GOTO in the form of IF <statement=true> THEN <Line number>, never to be able to recover from it such as if the player loses a life. From there an area of memory &1FF in size starting at &AE8C on a 464 or &AE70 on 6128 which fills due to further GOSUB routines being used and RETURNs not found. In this game though the whole process takes 20-25 minutes.

For the new version in the Downloads area, Subroutines which led to other parts of the game and in parts where a FOR loop is used with Keypress check within which then goes somewhere else (GOTO) have been either removed or altered, creating a stable version of the game. No enhancements (graphics) or alterations (mazes) of the original game have been made.