Difference between revisions of "Transtape"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
(Technical)
(Technical)
Line 8: Line 8:
 
== Technical ==
 
== Technical ==
  
* Uses a 16KB ROM
+
* Uses a 16KB ROM paged into memory at &0000.
* Uses a 8KB static RAM
+
* Uses a 8KB static RAM paged into memory at &c000.
* ROM is paged into the range &0000-&3fff when the button is pressed.
+
* ROM is paged into the range &0000-&3fff when the red button is pressed and the NMI vector is executed.
* Uses NMI, calls to &0066.
+
* Black button pages their ROM into the range &0000-&3fff and executes it at &0000. This checks the ROM version, and clears the extra ram if a CPC6128 BASIC ROM is found.
* There is code at &0000, don't know what it's for yet.
+
 
 +
[code]
 +
0000 f3        di                              ;; disable maskable interrupts
 +
0001 0100df    ld      bc,0df00h ;; select upper rom 0
 +
0004 ed49      out    (c),c
 +
0006 01817f    ld      bc,7f81h ;; enable upper rom (mode 1 too)
 +
0009 ed49      out    (c),c
 +
000b 31febf    ld      sp,0bffeh                ;; setup stack which is not initialised after reset
 +
 
 +
000e 3a02c0    ld      a,(0c002h)              ;; read BASIC ROM version number
 +
0011 fe02      cp      02h                      ;; CPC6128?
 +
0013 cc2e0c    call    z,0c2eh         ;; erase extra RAM
 +
 
 +
;; this appears to set it up for a reset..
 +
0016 210000    ld      hl,0000h
 +
0019 e5        push    hl
 +
001a e5        push    hl
 +
001b c30038    jp      3800h                    ;; I think the hardware monitors for address 3800h and if found disables the ROM
 +
[/code]
 +
 
 +
* Uses NMI
 +
* When a write happens to their RAM it appears to write through to the RAM behind??
 
* Menu code is at offset &3810 and is copied into RAM at &A200.  
 
* Menu code is at offset &3810 and is copied into RAM at &A200.  
 
* Uses port FBF0 (output), FBFF (input). Don't know the exact functions yet.
 
* Uses port FBF0 (output), FBFF (input). Don't know the exact functions yet.

Revision as of 08:48, 6 December 2013

A Spanish Hacking Device from HM (Hard Micro, S.A.).

Transtape


Please add more info here....

Technical

  • Uses a 16KB ROM paged into memory at &0000.
  • Uses a 8KB static RAM paged into memory at &c000.
  • ROM is paged into the range &0000-&3fff when the red button is pressed and the NMI vector is executed.
  • Black button pages their ROM into the range &0000-&3fff and executes it at &0000. This checks the ROM version, and clears the extra ram if a CPC6128 BASIC ROM is found.

[code] 0000 f3 di  ;; disable maskable interrupts 0001 0100df ld bc,0df00h ;; select upper rom 0 0004 ed49 out (c),c 0006 01817f ld bc,7f81h ;; enable upper rom (mode 1 too) 0009 ed49 out (c),c 000b 31febf ld sp,0bffeh  ;; setup stack which is not initialised after reset

000e 3a02c0 ld a,(0c002h)  ;; read BASIC ROM version number 0011 fe02 cp 02h  ;; CPC6128? 0013 cc2e0c call z,0c2eh  ;; erase extra RAM

this appears to set it up for a reset..

0016 210000 ld hl,0000h 0019 e5 push hl 001a e5 push hl 001b c30038 jp 3800h  ;; I think the hardware monitors for address 3800h and if found disables the ROM [/code]

  • Uses NMI
  • When a write happens to their RAM it appears to write through to the RAM behind??
  • Menu code is at offset &3810 and is copied into RAM at &A200.
  • Uses port FBF0 (output), FBFF (input). Don't know the exact functions yet.

writing 0 to fbf0 disables it's internal rom.

Pictures

Manual

Downloads

Weblinks

Some info can be found here (French)