#278039 - 21/03/2006 23:06
Hijack v450: enable playback with dead cs4231a
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Hijack v450 is now available, as is v449.
New in v449: allow button names to be used with extmute_on= and extmute_off= options.
New in v450: enable empeg to be used for digital playback (mp3, ogg, wav, ..) even when the cs4231a chip is dead.
That chip is only used for analog inputs, so this version of hijack forces the player into digital playback mode when it detects a dead cs4231a chip. It also intercepts the button codes for switching to analog inputs and ignores them. So no Tuner, no Aux, but the rest still works.
There's probably a loophole in there somewhere (eg. attempting to use the microphone..), but it works for me.
Cheers
Edited by mlord (21/03/2006 23:10)
|
Top
|
|
|
|
#278040 - 21/03/2006 23:25
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
pooh-bah
Registered: 12/02/2002
Posts: 2298
Loc: Berkeley, California
|
Quote: New in v449: allow button names to be used with extmute_on= and extmute_off= options.
Ah, I've always had the extmute buttons trigger a made up button code and then ir_translated that to what I wanted. I never knew why it had to be that way, but it worked. (Still) Looking forward to playing with this.
Matthew
|
Top
|
|
|
|
#278041 - 21/03/2006 23:34
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
|
Wow, what a fantastic feature! You are THE MAN.
|
Top
|
|
|
|
#278042 - 22/03/2006 00:29
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
carpal tunnel
Registered: 24/12/2001
Posts: 5528
|
The CS4231A is just used to sample the tuner/aux audio for the visualisations isn't it? I wonder how much work it would be to just fake the presence of the CS4231A and return 0 samples instead of disabling the tuner/aux.
|
Top
|
|
|
|
#278043 - 22/03/2006 01:31
Re: Hijack v450: enable playback with dead cs4231a
[Re: tman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: The CS4231A is just used to sample the tuner/aux audio for the visualisations isn't it? I wonder how much work it would be to just fake the presence of the CS4231A and return 0 samples instead of disabling the tuner/aux.
Yeah, I'm considering trying that. Easy enough to implement, but I don't know exactly what depends upon a real chip there. Other than the visuals for the analog sources.
Cheers
|
Top
|
|
|
|
#278044 - 22/03/2006 01:37
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
member
Registered: 09/03/2003
Posts: 121
Loc: Iowa
|
Quote: New in v450: enable empeg to be used for digital playback (mp3, ogg, wav, ..) even when the cs4231a chip is dead.
Can someone explain in English what this feature is?
|
Top
|
|
|
|
#278045 - 22/03/2006 01:56
Re: Hijack v450: enable playback with dead cs4231a
[Re: Gleep]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
Quote: New in v450: enable empeg to be used for digital playback (mp3, ogg, wav, ..) even when the cs4231a chip is dead.
Can someone explain in English what this feature is?
Sure. A modestly common hardware failure in the Empeg/RioCar units, is for a big chip called the cs4231a to die (permanently stops functioning). This is extremely difficult to fix, and when attempted has a less than 50% success rate.
Usually, the death of that chip means the end of the player, or expensive repairs.
Hijack v450 simply tries to allow the player to continue functioning even with that dead chip, at least for the stuff that doesn't actually use the chip. This only works when the dead chip isn't interfering with other hardware.
Cheers
|
Top
|
|
|
|
#278046 - 22/03/2006 12:03
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
member
Registered: 09/03/2003
Posts: 121
Loc: Iowa
|
Thanks Mark
That is one feature I hope I never need.
|
Top
|
|
|
|
#278047 - 22/03/2006 21:04
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
new poster
Registered: 04/04/2004
Posts: 16
Loc: Midwest
|
So the only thing that would play, if that chip died & you use this feature, are the mp3's, right? Quote: forces the player into digital playback mode
That sounds better than the original setup (analog), with the exception of losing the tuner/aux functions, why not do it all the time, I know I'm missing something here.
|
Top
|
|
|
|
#278048 - 22/03/2006 21:26
Re: Hijack v450: enable playback with dead cs4231a
[Re: Snowshoe]
|
carpal tunnel
Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
|
Quote: That sounds better than the original setup
You mean the way the empeg has worked all along?
I have a feeling that the point you're missing is that, when playing mp3s (or wavs or wmas or oggs or flacs), the empeg is in digital playback mode. It only uses the analog mode when using the tuner or the aux, where it has no digital audio path.
_________________________
Bitt Faulk
|
Top
|
|
|
|
#278049 - 22/03/2006 21:27
Re: Hijack v450: enable playback with dead cs4231a
[Re: Snowshoe]
|
pooh-bah
Registered: 12/02/2002
Posts: 2298
Loc: Berkeley, California
|
It always plays mp3's "digitally". It always gets the aux/tuner from analog. No getting around that. This just lets you use the mp3's when the analog portion is fried.
Matthew
|
Top
|
|
|
|
#278050 - 23/03/2006 03:39
Re: Hijack v450: enable playback with dead cs4231a
[Re: matthew_k]
|
Carpal Tunnel
Registered: 08/02/2002
Posts: 3411
|
And to clarify further - it only uses this particular chip to do the visuals. The audio is still handled by the dsp.
_________________________
Mk2a 60GB Blue. Serial 030102962
sig.mp3: File Format not Valid.
|
Top
|
|
|
|
#278051 - 23/03/2006 03:55
Re: Hijack v450: enable playback with dead cs4231a
[Re: genixia]
|
carpal tunnel
Registered: 17/12/2000
Posts: 2665
Loc: Manteca, California
|
Quote: And to clarify further - it only uses this particular chip to do the visuals. The audio is still handled by the dsp.
Ok, I'll bite. Why is that chip needed for the visuals?
_________________________
Glenn
|
Top
|
|
|
|
#278052 - 23/03/2006 04:16
Re: Hijack v450: enable playback with dead cs4231a
[Re: gbeer]
|
pooh-bah
Registered: 12/02/2002
Posts: 2298
Loc: Berkeley, California
|
It samples the audio for the CPU. The CPU tells the DSP what to do, but it does it all by itself without sending the audio through the CPU. So when the CPU wants to know what's going on with the audio, it has to sample it for itself.
Matthew
|
Top
|
|
|
|
#278053 - 26/03/2006 21:56
Re: Hijack v450: enable playback with dead cs4231a
[Re: matthew_k]
|
pooh-bah
Registered: 19/09/2002
Posts: 2494
Loc: East Coast, USA
|
Geez, in the next year or so, we'll have this whole thing reverse engineered. Good work Mark!
_________________________
- FireFox31 110gig MKIIa (30+80), Eutronix lights, 32 meg stacked RAM, Filener orange gel lens, Greenlights Lit Buttons green set
|
Top
|
|
|
|
#278054 - 11/12/2006 12:47
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
pooh-bah
Registered: 13/01/2002
Posts: 1649
Loc: Louisiana, USA
|
Quote: Hijack v450 is now available, as is v449.
New in v450: enable empeg to be used for digital playback (mp3, ogg, wav, ..) even when the cs4231a chip is dead.
That chip is only used for analog inputs, so this version of hijack forces the player into digital playback mode when it detects a dead cs4231a chip. It also intercepts the button codes for switching to analog inputs and ignores them. So no Tuner, no Aux, but the rest still works.
There's probably a loophole in there somewhere (eg. attempting to use the microphone..), but it works for me.
Cheers
I assume this feature is automatic? I've got a unit that does not recognize any hard drive no matter what cable is used and even with a resoldered header. The only thing I see from the boot log is that the CS4231 was not found. Would this cause the HD's to be totally ignored though? I've got the latest Hijack installed but that didn't help it.
Stu
Attachments
291887-bootlog.txt (130 downloads)
_________________________
If you want it to break, buy Sony!
|
Top
|
|
|
|
#278055 - 11/12/2006 15:14
Re: Hijack v450: enable playback with dead cs4231a
[Re: maczrool]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Versions of Hijack prior to v459 may not include the "complete" fix for this, so ensure you're using the latest (v464 right now).
With Hijack >= v459, the fix is automatic. If the cs4231a is dead, Hijack will notice and automatically try to work around the fault. This may or may not succeed, depending on the actual state of the dead chip.
It usually works, but once in a while the dead chip (1) may be driving some pins regardless, preventing use of the peripheral bus, or (2) might be the ethernet chip instead of the cs4231a.
Cheers
|
Top
|
|
|
|
#278056 - 11/12/2006 15:52
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
pooh-bah
Registered: 13/01/2002
Posts: 1649
Loc: Louisiana, USA
|
Quote: Versions of Hijack prior to v459 may not include the "complete" fix for this, so ensure you're using the latest (v464 right now).
With Hijack >= v459, the fix is automatic. If the cs4231a is dead, Hijack will notice and automatically try to work around the fault. This may or may not succeed, depending on the actual state of the dead chip.
It usually works, but once in a while the dead chip (1) may be driving some pins regardless, preventing use of the peripheral bus, or (2) might be the ethernet chip instead of the cs4231a.
Cheers
It's got Hijack 464. So you are saying it is possible for the ethernet chip or CS4231 to completely lock up the IDE bus? In the past it was usually a single stuck bit on the ethernet chip and at least the HDs were recognized.
Stu
_________________________
If you want it to break, buy Sony!
|
Top
|
|
|
|
#278057 - 11/12/2006 17:16
Re: Hijack v450: enable playback with dead cs4231a
[Re: maczrool]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: t it was usually a single stuck bit on the ethernet chip
That (above) is an example of "locking up the bus". IDE won't work with breakage like that.
Cheers
|
Top
|
|
|
|
#278058 - 11/12/2006 17:57
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
pooh-bah
Registered: 13/01/2002
Posts: 1649
Loc: Louisiana, USA
|
Sure, but in this case it's something more difficult to troubleshoot because we can't even see if there is a stuck bit.
Could this possibly be a problem with the addressing bits?
Stu
_________________________
If you want it to break, buy Sony!
|
Top
|
|
|
|
#278059 - 11/12/2006 18:20
Re: Hijack v450: enable playback with dead cs4231a
[Re: maczrool]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Anything is possible. But it is kinda difficult to comment here, as you have yet to provide *any* information (hint: boot log?).
Cheers
|
Top
|
|
|
|
#278060 - 11/12/2006 18:53
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
pooh-bah
Registered: 13/01/2002
Posts: 1649
Loc: Louisiana, USA
|
It was attached a few posts up, but here it is inline. empeg-car bootstrap v1.02 20001106 ([email protected]) If there is anyone present who wants to upgrade the flash, let them speak now, or forever hold their peace...it seems not. Let fly the Penguins of Linux!
e000 v1.04 Copying kernel... Calling linux kernel... Uncompressing Linux..................................... done, booting the kernel.
Linux version 2.2.14-rmk5-np17-empeg52 (rob@aphex) (gcc version 2.95.3 20010315 (release)) #11 Tue Apr 1 18:49:59 BST 2003
Processor: Intel StrongARM-1100 revision 11
NetWinder Floating Point Emulator V0.94.1 (c) 1998 Corel Computer Corp.
empeg-car player (hardware revision 9, serial number 40103200)
Command line: mem=16m
Calibrating delay loop... 207.67 BogoMIPS
Memory: 15024k/16M available (964k code, 20k reserved, 372k data, 4k init)
Dentry hash table entries: 2048 (order 2, 16k)
Buffer cache hash table entries: 16384 (order 4, 64k)
Page cache hash table entries: 4096 (order 2, 16k)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.2
Based upon Swansea University Computer Society NET3.039
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
TCP: Hash tables configured (ehash 16384 bhash 16384)
IrDA (tm) Protocols for Linux-2.2 (Dag Brattli)
Linux-IrDA: IrCOMM protocol ( revision:Tue May 18 03:11:39 1999 )
ircomm_tty: virtual tty driver for IrCOMM ( revision:Wed May 26 00:49:11 1999 )
Starting kswapd v 1.5
SA1100 serial driver version 4.27 with no serial options enabled
ttyS00 at 0xf8010000 (irq = 15) is a SA1100 UART
ttyS01 at 0xf8050000 (irq = 17) is a SA1100 UART
ttyS02 at 0xf8030000 (irq = 16) is a SA1100 UART
Signature is 20706d65 'emp '
empeg display initialised.
empeg dsp audio initialised
empeg dsp mixer initialised
empeg dsp initialised
Could not find CS4231A (version=80)
empeg remote control/panel button initialised.
empeg usb initialised, PDIUSBD12 id 1012
empeg state support initialised 0089/88c1 (save to d0005600).
empeg RDS driver initialised
empeg power-pic driver initialised (first boot)
RAM disk driver initialized: 16 RAM disks of 4096K size
empeg single channel IDE
Probing primary interface...
Probing primary interface...
empeg-flash driver initialized
smc chip id/revision 0x1b49
smc_init couldn't find card
RAMDISK: ext2 filesystem found at block 0
RAMDISK: Loading 320 blocks [1 disk] into ram disk...
done.
VFS: Mounted root (ext2 filesystem).
empeg-pump v0.03 (19980601) Press Ctrl-A to enter pump... VFS: Cannot open root device 03:05
Kernel panic: VFS: Unable to mount root fs on 03:05
_________________________
If you want it to break, buy Sony!
|
Top
|
|
|
|
#278061 - 11/12/2006 19:08
Re: Hijack v450: enable playback with dead cs4231a
[Re: maczrool]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: It was attached a few posts up, but here it is inline.
Ah, I missed that one. But how about a log with *Hijack* installed ?
Thanks
|
Top
|
|
|
|
#278062 - 11/12/2006 19:11
Re: Hijack v450: enable playback with dead cs4231a
[Re: maczrool]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
From the non-Hijack log, it looks like data bit D5 is stuck low, probably due to the ethernet chip. But it would still be good to see the Hijack trace, with no drives installed.
Cheers
|
Top
|
|
|
|
#278063 - 11/12/2006 19:47
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
pooh-bah
Registered: 13/01/2002
Posts: 1649
Loc: Louisiana, USA
|
.D'oh! I thought Hijack was installed when I pulled the boot log, but apparently not! I didn't realize Hijack's IDE testing worked without the drives installed. Bootlog attached.
Attachments
291932-bootlog.txt (135 downloads)
_________________________
If you want it to break, buy Sony!
|
Top
|
|
|
|
#278064 - 11/12/2006 23:39
Re: Hijack v450: enable playback with dead cs4231a
[Re: maczrool]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Yeah, probably D5 at the ethernet chip (counting from D0). Perhaps try lifting that one pin, and see if the rest of it comes back to life.
Cheers
|
Top
|
|
|
|
#278065 - 12/12/2006 20:16
Re: Hijack v450: enable playback with dead cs4231a
[Re: mlord]
|
pooh-bah
Registered: 13/01/2002
Posts: 1649
Loc: Louisiana, USA
|
Okay, it was D5 as it has been before if I recall. How is it you can infer the fault of a single bit from a series of mismatches in the IDE test? 0xffff ----> 0xffdf and 0x5555 ----> 0xff55 imply several bits are off do they not?
In any case, thanks again for your help. Stu
_________________________
If you want it to break, buy Sony!
|
Top
|
|
|
|
#278066 - 12/12/2006 21:18
Re: Hijack v450: enable playback with dead cs4231a
[Re: maczrool]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: How is it you can infer the fault of a single bit from a series of mismatches in the IDE test? 0xffff ----> 0xffdf and 0x5555 ----> 0xff55 imply several bits are off do they not?
Heh.. Well, in an ideal world, the bus should read back all ffff's with no drives connected. But in practice, since it is basically tristated, the bus is floating. So the value we write tends to take a while to "fade away" again, before we see ffff.
The test we're doing isn't patient enough to wait for the bus to float back to ffff after we write, so we have to keep this in mind when evaluating the IDE test output with any value other than ffff being written.
But for the case of writing ffff, and then reading it back, we really should see ffff on the readback, most of the time. And that's the giveaway here: it consistently gave us this:
ide_data_test: wrote 0xffff read 0xffdf
So bit D5 appears to be stuck low (zero).
To validate this, then look at the rest of the trace, and verify that D5 is *never* anything other than a zero. Now double-check it against the CS4231A test earlier on, where we read 80 rather than the normal A0 value. Again, D5 is stuck low.
Cheers!
|
Top
|
|
|
|
|
|