Difference between revisions of "Arnold4"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
 
(5 intermediate revisions by 2 users not shown)
Line 16: Line 16:
 
In 464 mode :
 
In 464 mode :
 
* the /ROM2 signal is always high : ROM7 selection is not handled on board.
 
* the /ROM2 signal is always high : ROM7 selection is not handled on board.
* the /CAS1 signal is always high : RAM extension is not handled on board.
+
* the /CAS1 signal is always high : RAM extension is not handled on board.
  
 
In 6128 mode :
 
In 6128 mode :
* the /ROM2 signal is handled on board.
+
* the /ROM2 signal is handled on board like AMSDOS ROM is handled on 6128/DDI1. When /EXT tied low, /ROM2 will be active when ROM7 is selected. When /EXT is floating (ie pulled up), /ROM2 will be active when ROM0 is selected.
* the /CAS1 is handled on board, with the expected result of getting garbage instead of base RAM when using RAM selection other than C0
+
* 464 will get stuck after displaying the copyright message and before the "BASIC 1.0" message as nothing is connected to /ROM2.
* CPC does get stuck after displaying the copyright message and before the "BASIC 1.0" message.
+
* the /CAS1 is handled on board. On 464, expect garbage instead of base RAM when using RAM selection other than C0 and no RAM extension connected.
  
 
==Extension RAM management==
 
==Extension RAM management==
Line 30: Line 30:
  
 
In 6128 mode :
 
In 6128 mode :
* Garbage all the way on extension RAM with no extension connected, as expected as no ram is there ;D
+
* On a 464, garbage all the way on extension RAM with no extension connected, as expected as no ram is there.
 +
* adding 41464 in the alternate footprint and connected to CAS1 instead of CAS0 may transform the 464 in 4128
 
* With an extension, C3 is working as expected
 
* With an extension, C3 is working as expected
* adding 41464 in the alternate footprint and connected to CAS1 instead of CAS0 may transform the 464 in 4128  ;)
 
  
 
==ROM7 and ROMDIS in 6128 mode==
 
==ROM7 and ROMDIS in 6128 mode==
* Well, no luck. ROMDIS does not prevent internal ROM7 to be selected
+
* ROMDIS does not prevent internal ROM7 to be selected, as on regular 6128, unlike plus range.
* ROMDIS act as an output when ROM7 is selected (However I need to re-check that it is only happening on ROM 7)
+
* ROMDIS act as an output when ROM7 is selected (TBC : only on ROM7/0 ?)
* ROMDIS act as the DDI ROMDIS as it is active even during ram access 10943-0
+
* ROMDIS act as the DDI1 ROMDIS as it is active even during ram accesses.
 
+
<br />
 +
The following picture shows the ROM detection routine : Selection of ROM7, followed by a read at 0xC000 where ROMDIS is active as well as /ROM2
 
[[File:CPC464PREASIC 6128mode ROM7.png]]
 
[[File:CPC464PREASIC 6128mode ROM7.png]]
  
 
==/EXP==
 
==/EXP==
  
When the DDI1 extension is not plugged, /EXP is pulled high, and /ROM2 signal is in fact ROM0 and replace the BASIC. As no ROM is connected, it just crash !
+
On a 464, when no DDI1 extension is plugged, /EXP is pulled high. /ROM2 signal is active as ROM0 and replace the BASIC. As no ROM is connected, it just crash !<br />
+
On a 6128, /EXP is permanently tied to GND.
 +
 
 
==Bonus==
 
==Bonus==
* on the following page, Gate Array and ASIC Pin-Outs - CPCWiki, pin 35 and 36 are undocumented.
+
* In the amendment service manual, pins 35 and 36 are undocumented. However, according to the PCB mask, these pins goes to the FDC through links : pin 35 to DATA, pin 36 to WINDOW
* on the PCB in the amendment service manual, these to pins goes to the FDC thru links : pin 35 to DATA, pin 36 to WINDOW 10945-1
+
* Amstrad was designing its own data separator and planned to use it on this version of the CPC. But As hinted in [[Arnold_V_specs]], it was not ready.
  
 
[[File:6128 PreAsic PCB.png]]
 
[[File:6128 PreAsic PCB.png]]
 +
<br /><br />
 +
= Enabling 6128 mode on 464 =
 +
Enabling the 6128 mode has two main advantages :
 +
* Being fully compatible with 6128 memory modes, mainly C3 mode when upper ROM is enabled.
 +
* On board memory can be increased to 128kb.
 +
<br />
 +
The compatibility modification, which is reversible, is achieved by soldering two wires:
 +
* one connecting IC101 pin 97 (L6N4) to ground, which configure the asic to work as a 6128
 +
* one connecting expansion port pin 48 (EXT/) to ground, preventing the asic to map the missing AMSDOS ROM in place of BASIC one.
 +
<br />
 +
The modifications are visible on the picture below
 +
 +
[[File:Enable6128modeOn464PreAsic.jpg]]
  
* Looks like amstrad was designing its own data separator and planned to use it on this version of the CPC. But As hinted in Arnold V specs - CPCWiki, it was not ready.
+
[[Category:Hardware]]

Latest revision as of 05:40, 11 March 2018

The final cost down models came just before the release of the Amstrad plus. The same chip was used within late CPC464 and CPC6128. It performs the operations of the PAL used in the CPC6128, the Gate-Array used in older CPCs and the CRTC.

CRTC

In CRTC terms it operates almost the same as the CRTC within the Plus ASIC.

Costdown IC pinout information

The following information relating to the pins of the IC was tested and verified by Gerald:

L4N6 pin

While it is connected to GND on the 6128, it is left unconnected on the 464 and seems to be internally pulled up.

In 464 mode :

  • the /ROM2 signal is always high : ROM7 selection is not handled on board.
  • the /CAS1 signal is always high : RAM extension is not handled on board.

In 6128 mode :

  • the /ROM2 signal is handled on board like AMSDOS ROM is handled on 6128/DDI1. When /EXT tied low, /ROM2 will be active when ROM7 is selected. When /EXT is floating (ie pulled up), /ROM2 will be active when ROM0 is selected.
  • 464 will get stuck after displaying the copyright message and before the "BASIC 1.0" message as nothing is connected to /ROM2.
  • the /CAS1 is handled on board. On 464, expect garbage instead of base RAM when using RAM selection other than C0 and no RAM extension connected.

Extension RAM management

In 464 mode :

  • The RAMDIS signal IS taken into account. That mean that extension that does not force the MREQn will work. This include the SymbifaceII
  • The C3 mode is NOT supported, as on regular 464.

In 6128 mode :

  • On a 464, garbage all the way on extension RAM with no extension connected, as expected as no ram is there.
  • adding 41464 in the alternate footprint and connected to CAS1 instead of CAS0 may transform the 464 in 4128
  • With an extension, C3 is working as expected

ROM7 and ROMDIS in 6128 mode

  • ROMDIS does not prevent internal ROM7 to be selected, as on regular 6128, unlike plus range.
  • ROMDIS act as an output when ROM7 is selected (TBC : only on ROM7/0 ?)
  • ROMDIS act as the DDI1 ROMDIS as it is active even during ram accesses.


The following picture shows the ROM detection routine : Selection of ROM7, followed by a read at 0xC000 where ROMDIS is active as well as /ROM2 CPC464PREASIC 6128mode ROM7.png

/EXP

On a 464, when no DDI1 extension is plugged, /EXP is pulled high. /ROM2 signal is active as ROM0 and replace the BASIC. As no ROM is connected, it just crash !
On a 6128, /EXP is permanently tied to GND.

Bonus

  • In the amendment service manual, pins 35 and 36 are undocumented. However, according to the PCB mask, these pins goes to the FDC through links : pin 35 to DATA, pin 36 to WINDOW
  • Amstrad was designing its own data separator and planned to use it on this version of the CPC. But As hinted in Arnold_V_specs, it was not ready.

6128 PreAsic PCB.png

Enabling 6128 mode on 464

Enabling the 6128 mode has two main advantages :

  • Being fully compatible with 6128 memory modes, mainly C3 mode when upper ROM is enabled.
  • On board memory can be increased to 128kb.


The compatibility modification, which is reversible, is achieved by soldering two wires:

  • one connecting IC101 pin 97 (L6N4) to ground, which configure the asic to work as a 6128
  • one connecting expansion port pin 48 (EXT/) to ground, preventing the asic to map the missing AMSDOS ROM in place of BASIC one.


The modifications are visible on the picture below

Enable6128modeOn464PreAsic.jpg