====== Ausgesperrt ======
Liebe Leute,
falls sich mal jemand "aussperrt" ...
ich habe auf meinem R8C Controller ein fehlerhaftes Programm
installiert, welches mich ausgesperrt hat. Das Programm "run" war als
task markiert und vermittelst
rom
' run is bootmessage
ram
savesystem
selbststartend gemacht. Allerdings wurde der stack in weniger als
einer Sekunde vollgeschrieben (fehlender drop) und ich konnte am
terminal kein "empty" mehr eingeben.
Das gforth neu in den Programmspeicher zu schreiben hat zwar
funktioniert, bringt aber nichts, weil das fehlerhafte Programm nach
wie vor im Datenspeicher liegt. Soweit ich sehe, kann das m16c-flash
Programm den Datenspeicher nicht löschen ...
Wenn man unter Windows die Renesas Entwicklungsumgebung hat, dann kann
man ein anderes Programm aufspielen, was das Datenflash löscht und die
Angelegenheit beendet.
Wer aber einen windowsfreien Haushalt hat, der kann zum Einbrechen
eine geänderte Version des gforths einspielen, dann ist auch Ruhe. In
der Datei arch/r8c/prim.fs habe ich das Wort "empty" in r8cboot
dazugefügt, das resultierende image eingespielt, und dann war der Spuk
vorbei :-)
Nur zur Info.
Erich
diff -ub prim.fs.dist prim.fs
--- prim.fs.dist 2006-11-20 21:12:36.000000000 +0100
+++ prim.fs 2006-11-19 20:00:59.000000000 +0100
@@ -787,7 +787,7 @@
: 9k6 $8105 $A8 ! ; \ baud setting
: 38k4 $2005 $A8 ! ; \ fast terminal
: r8cboot ( -- ) ['] noop IS pause
- timer-init flash-enable lcdinit 38k4
+ timer-init flash-enable lcdinit 38k4 empty
s" Gforth EC R8C" lcdtype boot ;
' r8cboot >body $C002 !
: savesystem ( -- )