RSX - Switch DK'Tronic Bank|Computing With the Amstrad)Applications Utilitaires Rsx/ligne De Commande
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

ROBIN NIXON assesses a RAM box which promises more memory for your micro

THE DK Tronics bank switched RAM box gives your Amstrad either an extra 64k or 256kof RAM, depending on the version you have. It comes in a small box which plugs into the floppy disc port on the CPC464 or the expansion port on the CPC664 and CPC6128.

The version we received for review would not plug into a CPC 6128 but DK'Tronics tell me that later versions will have a re-designed case which will connect to all models.

There is also a connector on the back of the RAM box so other add-ons can be attached to it.

Because the Z80 cannot handle more than 64k at a time the extra RAM is bank switched. That means that the extra memory is divided up into chunks, or banks. You can switch between these banks of memory, though your Z80 can only talk to one bank at a time.

Although the 64k of the standard CPC464 is a lot of RAM - the standard BBC Micro only has 32k -and is enough for most purposes, there are several applications for which you may need a lot more.

For example, pull down menus in graphics programs require a large amount of memory in which to storethe screen data "behind" the menu. Also the extra RAM could be used to store the information for large databases. These would run much faster in RAM than on disc.

Having the extra memory is one thing, using it is another. If you are an experienced assembly language programmer you can access the extra RAM directly.

However DK'Tronics provide a far easier system for making use of it. With the RAM box you get a cassette of RSX - resident software extension -utilities which give your Amstrad extra Basic commands sucK as |EMULATE which emulates the bank switching of a 128. or |SWAP, which swaps graphic screens instantaneously.

When you run the RSX program the first thing it does is a RAM test to check that the RAM box is present and working. If the test is successful your Amstrad will have an extra 14 commands as detailed in Table I.

Let's have a look at two of the RSX commands in detail. |SAVEW saves the contents of a window to the extension RAM and |LOADW reloads it. Listing I gives an example of how these commands can be used to construct pull-down menus.

  • Lines 20-50 draw a grid on the screen.
  • Line 70 defines a random window.
  • Line 90 saves the contents of the window to the extra RAM.
  • Lines 100-120 clear the window and print a message in it.
  • Line 140 restores the previous contents of the window.

This windowing technique doesn't take up any of the Amstrad's normal memory bar the short Basic routine, so features like it could be included in virtually all Basic software.

To access the extra RAM from Basic without using RSXs you use OUT &7F00 in the following manner.

where Bank is the bank to be switched in:

OUT &7FBB, 196+(Bank AND 3)+(Bank AND 28)*2

To select a particular bank from assembly language you would enter the routine in Listing II where A contains the bank to be selected.

Using |EMULATE , CP/M software for the CPC6128 such as Masterfile and Tasword 128 will run on a CPC464, as the CPC6128's bank switching techniques are fully implemented. However it is not a complete CPC6128 upgrade. For a start DK'Tronics says it doesn't envisage releasing CP/M plus with the RAM box and, of course, it won't give your CPC464 the additional Basic commands of the CPC6128.

Also the operating systems of the CPC464 and CPC6128 are quite different, and many programs written on the CPC464 use "illegal" calls which will not work on the CPC664 or CPC6128.

Illegal calls are made directly to memory locations rather than through vectors - which remain in the

same place while the locations they point to may not.

So is it a worthwhile addition? Well, if you find yourself running short of memory when writing software, or would like to take advantage of the animation facilities of |SWAP, then this add-on is for you. Also don't forget that it does give you a larger CP/M environment of 61k.

It is also possible that an amount of business software will be written to take advantage of the extra RAM. If this happens the RAM box is certainly worth keeping an eye on.

The 14 extra commands

|saves Allows you to save the entire contents of a screen to any section of the extra RAM. |slow Fast display of a saved screen.
|loads Retrieves a screen from extra RAM. |high Produces a fast re-display of the current screen after issuing |SWAP or |SLOW.
|savew Saves the entire contents of a specified window to any section of the extra RAM. |askram Interrogates the RAM box. This can be used to find out the amount of extra RAM available, the number of banks of free RAM, or whether a certain location is faulty.
|loadw Loads a window back. |poke Lets you poke a byte into any location in the extra RAM.
|saved Saves data from any area of Amstrad memory to any section of the extra RAM. |peek Peeks any location in the extra RAM.
|loadd Retrieves the above data. |bank If you have the 64k version you have four banks of 16k available, or if you have the 256k version you have 16 banks. The bank you are working with can be selected by |BANK.
|swap Fast swap between the current screen and a saved one - especially useful for animation. |emulate Emulates the memory handling - bank switching - of the CPC6128.


★ PUBLISHER: Computing With The Amstrad
★ YEAR: 1986
★ AUTHOR: Robin Nixon

CPCrulez[Content Management System] v8.7-desktop
Page créée en 842 millisecondes et consultée 818 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.