Yes, that is correct. The complete register accesses look as follows:
69a7b08 000b9418 CPU GPI_F_VAL 6000d0b4 R4-0000003b <<<< right click
detection (into radio menu)
69ddd55 0000e8f4 CPU ???????? 70000020 R4-40000000 <<<< reading
DEV_INIT
69ddd57 0000e8fc CPU ???????? 70000020 W4-40000000 <<<< bic bit 11
of DEV_INIT
.... as posted before .....
If it is of interest to you, I can dump the sansa radio commands in a more
readable way.
But be aware, that the radio responses are synthetic in the emulator.
----- Original Message -----
From: "Ivan Zupan" <[EMAIL PROTECTED]>
To: "Rockbox development" <[email protected]>
Sent: Wednesday, May 16, 2007 2:38 AM
Subject: Re: Sansa radio driver (AS5314 help
I have tried those, but they are pretty much what Mr.H described.
Interestingly enough, he mentioned clearing bit 11 at 0x70000020 (no effect
on the radio whatsoever by the way). This address appears to be DEV_INIT.
Since all the hardware uses DEV_EN/DEV_INIT/DEV_RS, maybe the radio is not
enabled at all? Do you see any references to the above right before GPIOH
is used? It may be used to unmute the line1 in via some hardware switch...
Antonius Hellmann wrote:
I ran the sansa emulator into the radio menu. This is the result:
Directly after entering the radio menu the sansa emulator does a lot of
accesses to the GPIO-H registers.
Probably this can give a hint, how to configure the output? But it may be
only relevant for detecting the radio hardware.
R1=read one byte, W1=write one byte
711186e 0000e90c CPU GPO_H_VAL 6000d0ac R1-00000000
7111870 0000e914 CPU GPO_H_VAL 6000d0ac W1-00000010
7111872 0000e91c CPU GPO_H_ENB 6000d09c R1-0000001e
7111874 0000e924 CPU GPO_H_ENB 6000d09c W1-0000001e
7111876 0000e92c CPU GP_H_ENB 6000d08c R1-000000de
7111878 0000e934 CPU GP_H_ENB 6000d08c W1-000000de
7111879 0000e938 CPU GPO_H_ENB 6000d09c R1-0000001e
711187b 0000e940 CPU GPO_H_ENB 6000d09c W1-0000001e
711187c 0000e944 CPU GP_H_ENB 6000d08c R1-000000de
711187e 0000e94c CPU GP_H_ENB 6000d08c W1-000000fe
711187f 0000e950 CPU GPO_H_VAL 6000d0ac R1-00000010
7111881 0000e958 CPU GPO_H_VAL 6000d0ac W1-00000010
7111882 0000e95c CPU GPO_H_ENB 6000d09c R1-0000001e
7111884 0000e964 CPU GPO_H_ENB 6000d09c W1-0000001e
7111885 0000e968 CPU GP_H_ENB 6000d08c R1-000000fe
7111887 0000e970 CPU GP_H_ENB 6000d08c W1-000000fe
71119a9 0000ea60 CPU GPO_H_VAL 6000d0ac R1-00000010
71119ac 0000ea6c CPU GPO_H_VAL 6000d0ac W1-00000018
71119ae 0000ea74 CPU GPO_H_ENB 6000d09c R1-0000001e
71119b0 0000ea7c CPU GPO_H_ENB 6000d09c W1-0000003e
repeating
71119c7 0000ea04 CPU GPO_H_VAL 6000d0ac R1-00000018
71119c9 0000ea0c CPU GPO_H_VAL 6000d0ac W1-00000008
71119ca 0000ea10 CPU GPO_H_VAL 6000d0ac R1-00000008
71119ce 0000ea20 CPU GPO_H_VAL 6000d0ac W1-00000028
71119df 0000ea2c CPU GPO_H_VAL 6000d0ac R1-00000028
71119e1 0000ea34 CPU GPO_H_VAL 6000d0ac W1-00000038
----- Original Message ----- From: "Ivan Zupan" <[EMAIL PROTECTED]>
To: "Rockbox development" <[email protected]>
Sent: Tuesday, May 15, 2007 6:57 AM
Subject: Re: Sansa radio driver (AS5314 help
>
You could try Toni's emulator, maybe this gives some hint's about GPIO
ports or memory addresses, but i don't know how much the emulator works
with the radio part of the OF.
http://www.rockbox.org/tracker/task/6524
Maybe someone with a better understanding of it can look over that part?
I could not even get it past the bootloader...
In terms of progress, all that works so far is detecting if the station
is mono/stereo, getting the chip id, and station signal strength. I
have also made it generate an interrupt for what it's worth. However,
there are some things which need to be figured out, such as the
algorithm for tuning. It involves calculations from 3 registers,
FM_OSC, IF_OSC and FM_CAP and a bunch of math intensive operations. It
also requires you to measure with an internal counter and write the
result to another register. Interestingly enough, they ask that a
register be set to 65% of the value of another, but there is no
reference to floating point or rounding?!