Hint:
generally it is to recommend, to use syscalls instead of directly accessing
registers, if possible.
The GetDeviceInfo-function of protocol 7.00 returns RENESAS SH730501 as processor identifier.
The protocol 7.00 Get Device Info-function (01) works as expected.
HardwareIdentifier: Ly755000
ProcessorIdentifier: RENESAS SH730501
PreprogrammedROMcapacity: 00000000
FlashROMcapacity: 00032768
RAMcapacity: 00002048
PreprogrammedROMversion:
Bootcodeversion:
Bootcodeoffset:
Bootcodesize:
OScodeversion: 01.02.0200
OScodeoffset: 00020000
OScodesize: 00012288
Protocolversion: 7.00
ProductID1: returns the individual calculator-ID
ProductID2:
NamesetbyuserinSYSTEM:
Probably it is a customized SH
7705/7720/7730/7724-clone.
The SH 7724 has been mentioned first by brijohn (http://cemetech.net/forum/viewtopic.php?t=5507&start=156).
Th SH 7724 is the closest match to the 7305, though the SH 7724 obviously
contains no ADC.
The serial-registers are similar to these of the 7705, but obviously not identical.
Syscall 0x1BB4 uses a TMU with the base address
0xA4490004, which is neither 7705 nor 7720.
The register structure is identical to the 7730 TMU.
Module | 7305 (Prizm/GII-2) | 7705 | 7720 | 7724(*5) | 7730 | 7337 (G) | 7355 (GII) | |
RTC | A413 FEC0 | FFFF FEC0 | A413 FEC0 | A465 FEC0 | A465 FEC0 | FFFF FEC0 | ||
DMAC | FE00 8020 | A400 0020 | A401 0020 | FE00 8020 | FE00 8020 | A400 0020 | ||
ADC | A461 0080 | A400 0080 | A44C 0000 | - | A461 0000 | A400 0080 | ||
TMU | A449 0004 | FFFF FE92 | A412 FE92 | FFD8 0004 | FFD8 0004 | FFFF FE92 | ||
X/Y-memory (16 k) | - | A5007000(8k)/A5017000(8k) | A560 0000 | A560 0000 | ||||
RS-memory (16 k) | FD80 0000 | - | FD80 0000 | - | ||||
IL-memory (16 k) | E520 0000(*2) | A500 7000/A501 7000 | E520 0000 | E520 0000 | A560 0000 | |||
UBC | FF20 0000 | FFFF FF90 | A4FF FF90 | FF20 0000 | FF20 0000 | FFFF FF90 | ||
SCIF | A441 0000(*1) | A441 0000 | A443 8000 | FFE0 0000 | FFE0 0000 | A441 0000 | ||
STBCR | A415 0020 | FFFF FF82 | A415 FF82 | A415 0020 | A415 0020 | FFFF FF82 | ||
MSTPCR0 | A415 0030 | A415 FF88 | A415 0030 | A415 0030 | ||||
INTEVT | FF00 0028 | FFFF FFD8 | FFFF FFD8 | FF00 0028 | FF00 0028 | FFFF FFD8 | ||
PLLCR | A415 0024(*3) | A415 0024 | A415 0024 | |||||
FRQCR | A415 0000(*4) | A415 0000 | A415 0000 | |||||
PACR | A4050100 | A4000100 | A4050100 | A4050100 | A4050000 | A4000100 | ||
PADR | A4050120 | A4000120 | A4050120 | A4050120 | A4050080 | A4000120 | ||
EXTRA TMU | A44D0000 | - | - | - | - | A44C0030 | A44C0030 | |
KEYSC | A44B0000 | - | - | A44B0000 | - | - | ||
PVR return value | 10300B00 | 10300B00 | ||||||
PRR return value | 00002C00 | - | - | 00002200 | - | |||
IMR9 | A408 00A4 | A408 00A4 | A408 00A4 | |||||
USB mask bit | IMR9.1 | IMR9.1 | - | |||||
BCD ALU | A4CB0010..18 | A44C0010..18 | A44C0010..18 | |||||
(*1): address of the 7705, register structure of 7730.
(*2): the 7305 has at least one additional On-Chip-RAM-area: 2x8k at
E5007000..E5008FFF/E5017000..E5018FFF.
(*3): address of the 7730, register structure of 7780.
(*4): address of the 7730, register structure unknown.
(*5): found by brijohn (http://cemetech.net/forum/viewtopic.php?t=5507&start=156)
XXXX:
compatible, different address
XXXX: identical address,
incompatible
XXXX: compatible, identical
address
The processor version register 0xFF000030 of the Prizm
returns 0x10300B00.
According to the 7450/7451 hardware manual, appendix D, a CHIP-version code "is
always "H'10" in the SH-4A".
The major version byte (VER) is 0x30.
The minor version byte (CUT) is 0x0B.
The product version register 0xFF000044 of the Prizm returns 0x00002C00.
These return values are the same with the fx-9860GII-2 processor.
The standard 7730 does not contain an USB-module!
MPU | USB-base | USB-clock control | USB-transceiver control | |
7124/7125 | none | |||
7205 | FFFF 0000 | |||
7705 | A448 0000 | |||
7710 | none | |||
7720 | A442 0000/A442 8000 | A40A 0008 | A405 012C | |
7724 | A4D8 0000 | |||
7727 | 0400 0240/0400 0400 | |||
7730 | none | |||
7750/7751 | none | |||
7760 | FE34 0000 | |||
Available information about the 7305-USB-module:
Uses bit 1 of 7730-IMR09 and 7730-IMCR09 to mask the USB-interrupt (which is
the documented scheme on the 7724).
Available information about the 7305-Ports:
(Hint: some of the ports are used by the system.
Writing them lightheadedly may lead to a crash)
Adress (CR) | Adress (DR) | Special remarks | direction | |
A4050100 | A4050120 | System. Take care. | ||
A4050102 | A4050122 | |||
A4050104 | A4050124 | |||
A4050106 | A4050126 | |||
A4050108 | A4050128 | |||
A405010A | A405012A | |||
A405010C | A405012C | |||
A405010E | A405012E | |||
A4050110 | A4050130 | bit 3 is
connected to the serial-receive-pin bit 2 is connected to the serial-transmit-pin |
I O |
|
A4050112 | A4050132 | |||
A4050114 | A4050134 | bit 2 is connected to the serial-receive-pin | I/O | |
A4050116 | A4050136 | keyboard injector 1 control/data | O | |
A4050118 | A4050138 | bits 0..3: keyboard injector 2 control/data | O | |
A4050118 | A4050138 | bit 4: LCD enlighten | I/O | |
A405011A | A405013A | |||
A405011C | A405013C | |||
A405011E | A405013E | |||
A4050140 | A4050160 | |||
A4050142 | A4050162 | bit 3 enables the serial output gate | O | |
A4050144 | A4050164 | |||
A4050146 | A4050166 | |||
A4050148 | A4050168 | |||
A405014A | A405016A | |||
A405014C | A405016C | keyboard detector control/data | I | |
A405014E | A405016E | |||
A40501C6 | keyboard | |||
Accessing the 3pin serial lines directly:
Always ensure, that the other pins and pin-functions of
a port are never changed.
Always ensure to restore the original state of pins and pin-functions.
As long as the serial
pin-functions are not restored to the original state, any attempt to
communicate serially will fail.
For general aspects of programming the pin function
controller (PFC) refer to the 7730-hardware manual. Though the 7305 pin
functions are not compatible to those of the 7730 (as well as to any other
SH-3 or SH-4 processor).
A very close match seem to be the registers of the SH 7724. Alas this is under
NDA.
At first the outer gate has to be opened:
Set bit 3 of SH-7724 port U 0xA4050162 to output mode, t. i. set control
register 0xA4050142 accordingly.
Set bit 3 and bit 2 of SH-7724 port U 0xA4050162. Do not ask why bit 2 has to
be set, too. I do not know.
How to control the output of the serial transmit pin:
Set bit 2 of SH-7724 port J 0xA4050130 to output mode, t. i. set control
register 0xA4050110 accordingly.
Set or clear bit 2 of SH-7724 port J 0xA4050130 to control the serial transmit
pin state.
How to read the state of the serial receive pin:
Set bit 3 of SH-7724 port J 0xA4050130 to input mode, t. i. set control
register 0xA4050110 accordingly.
Read SH-7724 port J 0xA4050130 and isolate bit 3 to obtain the serial receive
pin state.
(see Insight's F17_Handler's source as reference)
(13.10.2012 16:46:43)