
The major point is that the maincpu engine halt the subcpu to read/write to its ram (i cannot use the flip flop word ram, since its 100% full).
Okay, it appear to work pretty good on real hardware exept one thing:
When I halt/unhalt even once the subcpu, any attempt to read data off the disc hang (the red led stays on after halt).
Of course, sub cpu still run and can execute any type of "non-loading" commands


mcd_wait_cdc_stat();
And the code is :
/*
###################################################################
Wait CDC_STAT ARRIVE TO 1 O_o
CDC stat^^
entry : _CDBIOS
IN: d0.w : Function Number (cdcstat)
Out:cscc
Break : do/d1/a0/a1
Func :
CDCSTAT 00008AH Check if prepared data here or not
*/
.align 4
.globl mcd_wait_cdc_stat
mcd_wait_cdc_stat:
Check:
move.w #0x8A, %d0
jsr 0x5f22
bcs Check
rts

I cross finguer that it simply loop forever...
Also, for segacd specialists, what should i do after detecting the error? I already tried to CDROM_stop and read again without success...
Thx a lot
Fonzie