catb0t / propforth

Automatically exported from code.google.com/p/propforth
0 stars 0 forks source link

UNDERFLOW causes lockup with GO channels #154

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?

STACK UNDERFLOW 

causes lockup with no error message when using GO-channels.

The reset does not reach the terminal program, 
and is not displayed on the PC side either.

Connect using GO channels
enter any commands to cause underflow

. . . 

No further messages are displayed.

Original issue reported on code.google.com by prof.bra...@gmail.com on 10 Jun 2012 at 12:55

GoogleCodeExporter commented 8 years ago
issue 154 - $x_con cog7 is console default.  MCS serial.  If he sees error, he 
gets lost.

Change to cog6

$S_con W@
Prop0 Cog0 ok
st?
ST: 0_000_000_007
Prop0 Cog0 ok
6 ' $S_con 2+ W!
Prop0 Cog0 ok
$S_con
Prop0 Cog0 ok
st?
ST: 0_000_000_007 0_000_000_006 0_000_000_006
Prop0 Cog0 ok
: test ."  cool " cr cr ;
Prop0 Cog0 ok
test
 cool

Prop0 Cog0 ok
. . .

CON:Prop0 Cog0 RESET - last sttus: 3 MAIN STAK UNDERFLOW

Prop0 Cog0 RESET - last status: 3 MAIN STACK UNDERFLOW
Prop0 Cog0 ok

Notice "status" is garbled: sttus

Status messages are blasted, and sometimes they get jumbled.  Just let it be 
jumbled.

Right way would be - use different error streams.
OPEN new issue for this - 
This will be a new kernel as GO channels will be REQUIRED!
So this won't be for a while.

Original comment by prof.bra...@gmail.com on 10 Jun 2012 at 10:38

GoogleCodeExporter commented 8 years ago
The problem has to do with $S_con still being defined as 7.

This means error messages or anything that write to $s_con will screw up the 
go-prop communication.

do the following

6 ' $S_con 2+ W!

this will define the console to cog 6, and console messages will be routed to 
go channel 0.

Original comment by salsa...@gmail.com on 23 Feb 2013 at 7:51