Changes

Jump to: navigation, search

Dk'tronics memory expansion

1,569 bytes added, 13:53, 1 October 2020
/* Mods */
[[Image:Dktronics vision 1.jpg|thumb|343px|right|256K Silicon Disc and 256K expansion (used as plain RAM , without the additional ROM cartridge here)]] The '''Memory Expansions by Expansion''' and '''Silicon Disc''' from [[Dk'tronics]]are both RAM expansions. The Silicon Disc additionally comes with a ROM which contains RAM-Disc functions.
== Description ==
=== Memory Expansions === [[Dk'tronics]] produced 2 different memory expansionsMemory Expansions, a 64K and a 256K which were compatible with all (non Plus) CPCs.
The expansions meant that CP/M Plus and CP/M 2.2 (with the use of a utility supplied) could both access a 'massive' 61K TPA.
The available memory could be switched in and out of the Z80 64K address block in banks of 16K using either RSX (bar) commands within basic or within an assembly code program. === Silicon Discs ===
The additional bar commands These were:intended to be used as RAM disc, made in 64K and 256K versions, too.
* |Bank, n - Map a 16K bank directly into memory space (where n is the bank No.)* |Swap - Alternate between high and low screens* |Low - Change to the low screen* |High - Change to the high (default) screen* |Saves, n - Store a screen to a 16K bank (where n is the bank No.)* |Loads, n - Retrieve a screen from a 16K bank (where n is the bank No.)* |Savew, w, n - Stores a windows contents into a 16K bank (where n is the bank No.)* |Loadw, w, n - Load a window with the data from a 16K bank (where n is the bank No.)* |Saved, n, s, l - Transfer original RAM to expansion RAM* |Loadd, n, s, l - Load original RAM from expansion RAM* |Peek, n, s, v - Read the value of a byte in the expansion RAM* |Poke, n, s, v - Write to a byte in the expansion RAM== Technical ==
For general info on I/O Ports, see:
* [[Standard Memory Expansions]].
A further command which was considered to be only for 'advanced' users was also described later === Internal 64KB in the handbook.6128 and External 64KB RAM ===
The command |Askram, E, V (E=enquiry No. V=variable) could be used to request information from the expansion card, including the amount of RAM available (where E=This uses 1)bank, return the number of banks available (where E=2) or (E=3) returned a 0 or 1 to indicate whether bank is mirrored through the expansion card 'had a problem'entire 512KB range. == Covers ==e.g. c4,c5,c6,c7 access the same ram as cc,cd,ce,cf.
<gallery caption="64k In terms of decoding the RAM Dktronics for CPC 464">selection byte:
Image:64K Dk'tronics for 464 Left Cover.jpg|Left CoverImage:64K Dk'tronics for 464 Back Cover.jpg|Back CoverImage:64K Dk'tronics for 464 Right Cover.jpg|Right CoverImage:64K Dk'tronics for 464 Front Cover.jpg|Front Cover11xxxsss
</gallery>x = ignoreds = selection (0-7)
<gallery caption="256k RAM Dktronics for CPC 464">== External 64KB Silicon Disk ===
Image:256K Dk'tronics for 464 Left CoverThe exact decoding is not known.jpg|Left CoverImage:256K Dk'tronics for 464 Back CoverTesting is needed to confirm.jpg|Back CoverImage:256K Dk'tronics for 464 Right Cover.jpg|Right CoverImage:256K Dk'tronics for 464 Front Cover.jpg|Front Cover
</gallery>=== 256KB RAM ===
== Other Versions ==This uses 4 banks (effectively 0-3 on 464 and 1-3 on 6128). It appears the 256KB RAM detects the 6128, possibly using /EXP but this is to be confirmed, so that it doesn't conflict with the 'extra 64KB' (i.e. c4-c7) RAM of the 6128.
Dk'tronics also made the "[[Dk'tronics Silicon Disc]]" RAM Disc. Not sure if/how it differs from the "Dk'tronics memory expansion".The decoding looks like this:
== Upgrade ==110bbsss
From b = bank (bank 0 is ignored on 6128 so that internal RAM is visible, 1,2,3 are from the Australian Mag : TAU 29 pag 04256KB RAM).s = selection (0-7)
<gallery caption="Dk'tronics memory expansion">On 6128 you get 256KB RAM + internal 64KB base RAM
Image:Upgrade 64K-256K Dk'tronics - TAU 29 pg 04.jpg|Upgrade 64K to 256K=== 256KB Silicon Disk ===
</gallery>This uses 4 banks (effectively 4-7), the banks are not mirrored. The RAM doesn't conflict with the internal RAM of the 6128 OR the 256KB RAM. The decoding looks like this:
== Pictures ==111bbsss
<gallery captionb ="64k RAM Dktronics for CPC 464 banks = selection (SMD0-7)">
Image:64K for CPC 464 - 01.jpg|64k On 6128 you get 256KB RAM Dktronics for CPC 464Image:64K for CPC 464 - 02.jpg|64k + 64KB internal extra RAM Dktronics for CPC 464Image:64K for CPC 464 - 03.jpg|64k + 64KB internal base RAM Dktronics for CPC 464Image:64K for CPC 464 - 04.jpg|64k RAM Dktronics for CPC 464Image:64K for CPC 464 - 05.jpg|64k RAM Dktronics for CPC 464Image:64K for CPC 464 - 06.jpg|64k RAM Dktronics for CPC 464Image:64K for CPC 464 - 07.jpg|64k RAM Dktronics for CPC 464Image:64K for CPC 464 - 08.jpg|64k RAM Dktronics for CPC 464
</gallery>=== Bank Numbers ===
<gallery caption="64k RAM Dktronics for CPC 464">* 64K Expansion and 64K Silicon Disk use only one 64K bank (bank 0)* 256K Expansion uses four 64K banks (bank 0..3)* 256K Silicon Disc uses four 64K banks (bank 4..7)
Image:64K for 464 - 04.jpg|64k The 256K Expansion and 256K Silicon Disc can be used together, resulting in 512K RAM Dktronics for CPC 464Image:64K for 464 - 05in eight banks (bank 0.jpg|64k RAM Dktronics for CPC 464Image:64K for 464 - 06.jpg|64k RAM Dktronics for CPC 464Image:64K for 464 - 077).jpg|64k RAM Dktronics for CPC 464Image:Plus, the 64K for 464 - 08.jpg|64k internal RAM Dktronics for CPC 464Image:64K for 464 - 09.jpg|64k is used (so total RAM Dktronics for CPC 464Image:64K for 464 - 10is 576K).jpg|64k RAM Dktronics for CPC 464Image:64K for 464 - 11.jpg|64k RAM Dktronics for CPC 464Image:64K for 464 - 01.jpg|64k RAM Dktronics for CPC 464Image:64K for 464 - 02.jpg|64k RAM Dktronics for CPC 464Image:64K for 464 - 03.jpg|64k RAM Dktronics for CPC 464
</gallery>=== Memory Expansion vs Silicon Disc ===
<gallery caption="Both are basically the 2 models of 64k same hardware, both contain RAM Dktronics for CPC 464">, use same I/O ports, and both are not battery-backed.* The Memory Expansions are intended as general purpose RAM, and software is included on cassette or disc.* The Silicon Discs are intended as RAM Disc, software is included on ROM. The 256K version uses special bank numbers (see above).
Image:2 - 64Ks - 01 .jpg|=== Versions === * The 2 64k RAM Dktronics 64K versions (of both Memory Expansion and Silicon Disk) were made only for CPC 464Image:2 /664. On CPC 6128 they would be useless (replacing the 2nd internal 64K by external 64K). - 64Ks - 02 - Although, reportedly 64K versions DO exist for 6128 (apparently mapping the 64K to a location where it doesn't overlap the internal RAM.jpg|Details are unknown?)* The 2 64k RAM Dktronics 256K versions (of both Memory Expansion and Silicon Disk) were made in separate versions for CPC 464/664 and 6128 (they should be compatible at software side, possibly they do differ only cosmetically...?)* All 64K/256K Memory Expansions, and the 64K Silicon Disc consist of a single cartridge. The 256K Silicon Disc is a special case: It consists of two cartridges shipped together (one contains the ROM, the other contains the RAM). == Pictures == [[Image:2 - 64Ks - 03 04 .jpg|The 2 64k RAM Dktronics for CPC 464thumb|right|150px|Normal and SMD version]][[Image:2 - 64Ks - 04 .jpg|thumb|left|150px|Normal and SMD version]]<center><br>There are too many different versions to list all photos on this page. See the photo gallery: <big><big>[[Dk'tronics Memory Expansion Gallery]]</big></big></center><br style="clear:both;"> == RSX Commands (Memory Expansion) == Bank Switch Software (with RSX commands) is included on tape or disc.The 2 64k Bank Switch Software RSX commands are: * |Bank, n - Map a 16K bank directly into memory space (where n is the bank No.)* |Swap - Alternate between high and low screens* |Low - Change to the low screen* |High - Change to the high (default) screen* |Saves, n - Store a screen to a 16K bank (where n is the bank No.)* |Loads, n - Retrieve a screen from a 16K bank (where n is the bank No.)* |Savew, w, n - Stores a windows contents into a 16K bank (where n is the bank No.)* |Loadw, w, n - Load a window with the data from a 16K bank (where n is the bank No.)* |Saved, n, s, l - Transfer original RAM to expansion RAM* |Loadd, n, s, l - Load original RAM from expansion RAM* |Peek, n, s, v - Read the value of a byte in the expansion RAM* |Poke, n, s, v - Write to a byte in the expansion RAM Dktronics for CPC 464
</gallery>A further command which was considered to be only for 'advanced' users was also described later in the handbook:
<gallery caption* |Askram, E, V (E="256k enquiry No. V=variable) could be used to request information from the expansion card, including the amount of RAM Dktronics for CPC 464">available (where E=1), return the number of banks available (where E=2) or (E=3) returned a 0 or 1 to indicate whether the expansion card 'had a problem'.
Image:256K for 464 - 07.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 08.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 09.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 10.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 03.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 04.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 05.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 06.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 01.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 02.jpg|256k RAM Dktronics for CPC 464Image:256K for 464 - 11.jpg|256k RAM Dktronics for CPC 464== RSX Commands (Silicon Disc) ==
<The whole software (including RSX tools for creating silicon disc compatible CP/gallery>M versions) is contained in the ROM, there is no cassette / disc included. The RSX commands are:
== Disc ==... - [See manual for now]
<gallery>caption="256k RAM Dktronics">= CPM ==
Image:256k RAM Dktronics - DiscDk'tronics Bank Switch software comes with NEWCPM.jpg|Disc for 256k COM CP/M program which installs a 61K TPA CPM2.2 which uses the Dk'Tronics RAM Dktronics.See [[DkTronics_CPM]].
<The manual also describes how to patch CPM+ (which is already compatible with Dk'Tronics RAM to run on 464/gallery> 664).
== Tape Reviews ==
<gallery>caption="Bank Switch Software">* 256K Silicon Disc reviewed in ACU May 1986, [[:File:ACU8605-039.jpg|page 39]].
Image:Bank Switch Software 1 (tape).jpg|Version 1Image:Bank Switch Software 2 (tape).jpg|Version 2Image:Bank Switch Software 3 (tape).jpg|Version 3== Mods ==
</gallery> * [[Media:Upgrade 64K-256K Dk'tronics - TAU 29 pg 04.jpg|Upgrade a 64K expansion to a 256K expansion]] - from the Australian Mag : TAU 29 pag 04.* An article in [[Amstrad Action]] ([[Amstrad_Action,_Issue_46,_Jul_1989|Issue 46, July 1989]], [[:File:AmstradAction046-16.jpg|page 16]] and [[:File:AmstradAction046-17.jpg|17]]) described how a Silicon Disk can be converted into a memory expansion.
== Manuals ==
* [[Media:Dkt64k.pdf|DK'Tronics 64Kb RAM Expansions DKtronics Manual]] (pdf){{EN}}* [[Media:256K RAM Expansions DKtronics Manual.pdf|DK'Tronics 256Kb RAM Expansions DKtronics Manual]] (pdf){{EN}}* [[Media:256K RAM Expansions DKtronics (Spanish) Manual.pdf|DK'Tronics 64K and 256Kb RAM Expansions DKtronics Manual]] (Spanishpdf) {{ES}}* [[Media:DKTronics_Silicon_Disk_Manual.pdf|DK'Tronics 64K and 256K Silicon Disc Manual]] (pdf){{EN}}* [[Media:DK'Tronics Peripheral - Technical Manual (Edition 1).pdf|DK'Tronics Peripheral - (Edition 1) Technical Manual]] (pdf) {{EN}}* [[Media:DK'tronics Manuel de Utilisation de la RAM d'Extension.pdf|DK'Tronics Manuel de Utilisation de la RAM d'Extension]] (pdf) {{FR}}
== Download ==
* [[Media:Dk'tronics 256k Bank Switch (disc).zip|DkDK'tronics Tronics 256k Bank Switch (disc).zip]] (DSK for Emulators) * [[Media:Dk'Tronics Bank Switch Software (tape).zip|DkDK'Tronics Bank Switch Software (tape).zip]] (CDT for Emulators)* [[Media:SilDsc11.rom|DK'Tronics Silicon Disc 1.1 ROM]] * [[Media:Dk'tronicsSiliconDiscRomImage.zip|DK'Tronics Silicon Disc 1.3 ROM]] * [[Media:SD212.ROM|Dk'tronics Silicon Disc 2.12 ROM]]* [[Media:SiliconDisc64.zip|DK'Tronics 64Kb Silicon Disc 0.3 ROM]]
[[Category:Hardware]] [[Category:Peripherals]] [[Category:Memory expansions]] [[Category:Manual]]
2,139
edits