From 98cab31fc3659e33aef260efca55bf9f1753164c Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Mon, 11 Feb 2019 11:49:19 +0100 Subject: Add source files from Michael --- system/ruc-terminal/unknown/src/SCCPARAM.ELA | 144 ++++++++++++ system/ruc-terminal/unknown/src/SETUP.ELA | 257 +++++++++++++++++++++ system/ruc-terminal/unknown/src/Terminal108(ascii) | 121 ++++++++++ .../ruc-terminal/unknown/src/Terminal108(deutsch) | 122 ++++++++++ system/ruc-terminal/unknown/src/ructerm.apl-german | 125 ++++++++++ system/ruc-terminal/unknown/src/ructerm.ascii | 94 ++++++++ 6 files changed, 863 insertions(+) create mode 100644 system/ruc-terminal/unknown/src/SCCPARAM.ELA create mode 100644 system/ruc-terminal/unknown/src/SETUP.ELA create mode 100644 system/ruc-terminal/unknown/src/Terminal108(ascii) create mode 100644 system/ruc-terminal/unknown/src/Terminal108(deutsch) create mode 100644 system/ruc-terminal/unknown/src/ructerm.apl-german create mode 100644 system/ruc-terminal/unknown/src/ructerm.ascii (limited to 'system/ruc-terminal/unknown/src') diff --git a/system/ruc-terminal/unknown/src/SCCPARAM.ELA b/system/ruc-terminal/unknown/src/SCCPARAM.ELA new file mode 100644 index 0000000..2a6ab19 --- /dev/null +++ b/system/ruc-terminal/unknown/src/SCCPARAM.ELA @@ -0,0 +1,144 @@ +(* Uebertragungsparameter fuer Kanal 2 und 3 (SCC) setzen *) +(* Vers. 1.2 : 'setup'-Prozedur / 03.02.86, M.Staubermann *) + +PACKET scc DEFINES baudrate, + setup , + + channel a, + channel b, + no parity, + even parity, + odd parity, + + read port, + write port, + register, + quartz : + +BOOL CONSTchannel a :: TRUE , + channel b :: FALSE ; +INT CONST no parity :: 0, + even parity :: 3, + odd parity :: 1; + +REAL VAR clk frequency := 12288000.0 ; (* Oszillatorfrequenz *) +LET offset = 0 ; + +PROC quartz (REAL CONST wert) : + clk frequency := wert +ENDPROC quartz ; + +REAL PROC quartz : + clk frequency +ENDPROC quartz ; + +PROC setup (BOOL CONST channel, INT CONST parity, + REAL CONST stopbits, INT CONST bits, + BOOL CONST dtr, rts, auto dtr, auto cts) : + +(* Parameter mssen zusammen gesetzt werden, da die Register keine + Read-Register sind. Alte Werte mssen ausserhalb des SCC's gespeichert + werden. *) + + INT VAR value := 64 ; + value INCR parity value ; + value INCR stopbit value ; + + register (channel, 3, 0) ; + register (channel, 5, 32 * bits value) ; + register (channel,14, 2) ; + + register (channel, 4, value) ; + register (channel, 5, 8 + dtr value + rts value + 32 * bits value) ; + register (channel,14, 3 + auto dtr value) ; + register (channel, 3, 1 + 64 * bits value + auto cts value) . + +bits value : + IF bits <= 5 THEN 0 + ELIF bits >= 8 THEN 3 + ELIF bits = 6 THEN 2 + ELSE 1 + FI . + +parity value : + IF parity >= 0 AND parity <= 3 THEN parity ELSE 0 FI . + +stopbit value : + IF stopbits = 1.0 THEN 4 + ELIF stopbits = 1.5 THEN 8 + ELIF stopbits = 2.0 THEN 12 + ELSE 4 + FI . + +dtr value : + IF dtr THEN 128 ELSE 0 FI . + +rts value : + IF rts THEN 2 ELSE 0 FI . + +auto cts value : + IF auto cts THEN 32 ELSE 0 FI . + +auto dtr value : + IF auto dtr THEN 4 ELSE 0 FI . + +ENDPROC setup ; + +PROC baudrate (BOOL CONST channel, REAL CONST rate) : + INT CONST time constant :: int (clk frequency / (64.0 * rate) + 0.5) - 2 ; + register (channel, 13, time constant DIV 256) ; + register (channel, 12, time constant AND 255) +ENDPROC baudrate ; + +REAL PROC baudrate (BOOL CONST channel) : + INT CONST time constant :: + register (channel, 12) + 256 * register (channel, 13) ; + round (clk frequency / (real (time constant + 2) * 64.0), 1) +ENDPROC baudrate ; + + +(*********************************************************************) +(********* S C C - Z u g r i f f s p r o z e d u r e n ********) +(*********************************************************************) + + +INT PROC read port (INT CONST port) : + INT VAR value ; + control (-1, offset + port, -1, value) ; + IF value = -1 THEN errorstop ("SCC - Read failed") ; 0 + ELSE value +FI . + +ENDPROC read port ; + +PROC write port (INT CONST port, value) : + INT VAR rcode, my channel := channel ; + continue (32) ; + control (-1, offset + port, value, r code) ; + continue (my channel) ; + IF r code = -1 THEN errorstop ("SCC - Write failed") FI +ENDPROC write port ; + +INT PROC register (BOOL CONST is channel a, INT CONST register x) : + INT VAR value ; + IF is channel a + THEN write port (1, registerx) ; + read port (1) + ELSE write port (0, registerx) ; + read port (0) + FI +ENDPROC register ; + + +PROC register (BOOL CONST is channel a, INT CONST register x, wert): + IF is channel a + THEN write port (1, register x) ; + write port (1, wert) + ELSE write port (0, register x) ; + write port (0, wert) + FI +ENDPROC register ; + +ENDPACKET scc ; + + diff --git a/system/ruc-terminal/unknown/src/SETUP.ELA b/system/ruc-terminal/unknown/src/SETUP.ELA new file mode 100644 index 0000000..3e2f3e7 --- /dev/null +++ b/system/ruc-terminal/unknown/src/SETUP.ELA @@ -0,0 +1,257 @@ +PACKET setup DEFINES setup : (* 02.03.86, M.Staubermann *) + +LET separator = "|" , + old option mark = " " , (* ""16"" , *) + choice mark = ""15"" , + end mark = ""14"" , + left = ""8"" , + right = ""2"" , + bottom = ""6""21""0"" , + clr line = ""13""5"" , + home = ""1"" ; + +PROC selektor (TEXT CONST options, INT VAR option number,BOOL CONST warten) : + TEXT VAR zeichen ; + INT VAR i , + last separator pos , + new separator pos := 0 , + old option := option number , + max options := 0 ; + REP + new separator pos := pos (options, separator, new separator pos +1) ; + max options INCR 1 + UNTIL new separator pos = 0 PER ; + out (""13"") ; + REP + i := 0 ; + last separator pos := 0 ; + REP + i INCR 1 ; + new separator pos := pos (options, separator, last separator pos + 1) ; + IF new separator pos = 0 + THEN new separator pos := LENGTH options + 1 + FI ; + IF i = option number + THEN out (choice mark) + ELIF i = old option + THEN out (old option mark) + ELSE out (end mark) + FI ; + out subtext (options, last separator pos + 1, new separator pos - 1) ; + out (end mark) ; + last separator pos := new separator pos + UNTIL last separator pos = LENGTH options + 1 PER ; + out (""13"") ; + IF warten + THEN inchar (zeichen) ; + IF zeichen = ""27"" + THEN option number := old option + ELIF zeichen = left AND option number = 1 + THEN option number := max options + ELIF zeichen = left + THEN option number DECR 1 + ELIF zeichen = right AND option number = max options + THEN option number := 1 + ELIF zeichen = right + THEN option number INCR 1 + FI + ELSE zeichen := ""13"" + FI + UNTIL zeichen = ""13"" OR zeichen = ""27"" PER +ENDPROC selektor ; + +LET std datenbits = 4 , (* 8 *) + std stopbits = 1 , (* 1.0 *) + std flowmode = 1 , (* xon/xoff *) + std parity = 1 , (* no parity *) + std fixed = 4 , (* RTS ON, DTR ON *) + + setup text = "Ende|Kanal|Baudrate|Datenbits|Stopbits|Parity|Fluákontrolle", + ende text = "Žndern|Abbruch" , + kanal text = "2|3" , + datenbits text= "5|6|7|8" , + stopbits text = "1.0|1.5|2.0" , + parity text = "no|even|odd" , + fixed text = "DTR OFF/RTS OFF|DTR OFF/RTS ON|DTR ON/RTS OFF|DTR ON/RTS ON" , + flowmode text = "xon/xoff|dtr|rts/cts|dtr/rts/cts|fixed" ; + +INT VAR old session := 0 ; +ROW 2 INT VAR datenbits, stopbits, parity, flowmode , fixed ; +ROW 2 REAL VAR baudrates ; + +PROC init params : + datenbits := ROW 2 INT:(std datenbits , std datenbits) ; + stopbits := ROW 2 INT:(std stopbits , std stopbits) ; + parity := ROW 2 INT:(std parity , std parity) ; + flowmode := ROW 2 INT:(std flowmode , std flowmode) ; + fixed := ROW 2 INT:(std fixed, std fixed) ; + baudrates := ROW 2REAL:(baudrate (channelb), baudrate (channela)) ; +ENDPROC init params ; + +PROC setup : + INT VAR kanal := aktueller kanal , + setup choice := 1 ; + BOOL VAR x dtr, x rts, x auto dtr, x cts ; + page ; + init setup (kanal, setup choice) ; + select setup choice ; + cursor (1, 19) ; + setup choice := 2 ; + selektor (ende text, setup choice, TRUE) ; + out (bottom) ; + IF setup choice = 1 + THEN kanal := 1 ; + x flowmode ; + setup (kanal bool, x parity, x stopbits, x datenbits, + x dtr, x rts, x auto dtr, x cts) ; + baudrate (kanal bool, baudrates (kanal)) ; + kanal := 2 ; + x flowmode ; + setup (kanal bool, x parity, x stopbits, x datenbits, + x dtr, x rts, x auto dtr, x cts) ; + baudrate (kanal bool, baudrates (kanal)) + FI . + +x flowmode : + x dtr := FALSE ; + x rts := FALSE ; + SELECT flowmode (kanal) OF + CASE 1 : x auto dtr := FALSE ; (* XON/XOFF *) + x cts := FALSE + CASE 2 : x auto dtr := TRUE ; (* DTR *) + x cts := FALSE + CASE 3 : x auto dtr := FALSE ; (* RTS/CTS *) + x cts := TRUE + CASE 4 : x auto dtr := TRUE ; (* RTS/CTS/DTR *) + x cts := TRUE + CASE 5 : x auto dtr := FALSE ; (* fixed *) + x cts := FALSE ; + SELECT fixed (kanal) OF + CASE 1 : x dtr := FALSE ; (* wie XON/XOFF *) + x rts := FALSE + CASE 2 : x dtr := FALSE ; (* RTS=1 *) + x rts := TRUE + CASE 3 : x dtr := TRUE ; (* DTR=1 *) + x rts := FALSE + CASE 4 : x dtr := TRUE ; (* RTS=1,DTR=1 *) + x rts := TRUE + ENDSELECT +ENDSELECT. + +x parity : + SELECT parity (kanal) OF + CASE 2 : even parity + CASE 3 : odd parity + OTHERWISE no parity + ENDSELECT. + +x stopbits : + SELECT stopbits (kanal) OF + CASE 2 : 1.5 + CASE 3 : 2.0 + OTHERWISE 1.0 + ENDSELECT. + +x datenbits : + datenbits (kanal) + 4. + +select setup choice : + REP + cursor (1, 5) ; + selektor (setup text, setup choice, TRUE) ; + SELECT setup choice OF + CASE 1 : LEAVE select setup choice + CASE 2 : select kanal choice + CASE 3 : select baudrate choice + CASE 4 : select datenbits choice + CASE 5 : select stopbits choice + CASE 6 : select parity choice + CASE 7 : select flowmode choice + ENDSELECT + PER . + +select kanal choice : + INT VAR save kanal := kanal ; + cursor (1, 7) ; + selektor (kanal text, kanal, TRUE) ; + init setup (kanal, setup choice) . + +select baudrate choice : + cursor (1, 9) ; + TEXT VAR t := text (baudrates (kanal)) + " " ; + out (" ") ; + editget (t) ; + baudrates (kanal) := real (t) . + +select datenbits choice : + cursor (1, 11) ; + selektor (datenbits text, datenbits (kanal), TRUE) . + +select stopbits choice : + cursor (1, 13) ; + selektor (stopbits text, stopbits (kanal), TRUE) . + +select parity choice : + cursor (1, 15) ; + selektor (parity text, parity (kanal), TRUE). + +select flowmode choice : + cursor (1, 17) ; + selektor (flowmode text, flowmode (kanal), TRUE) ; + IF flowmode (kanal) = 5 + THEN cursor (1, 19) ; + selektor (fixed text, fixed (kanal), TRUE) ; + out (clr line) + FI . + +aktueller kanal : + IF channel = 2 THEN 1 + ELIF channel = 3 THEN 2 + ELSE 1 + FI . + +kanal bool : + IF kanal = 1 THEN channel b ELSE channel a FI . + +ENDPROC setup ; + +PROC init setup (INT VAR kanal, setup choice) : + IF session <> old session + THEN init params ; + old session := session + FI ; + out (home) ; + putline (" ----------------------------- V 2 4 - S E T U P ---------------------------") ; + line ; + putline (" Verlassen 'ESC', Aussuchen 'LEFT' und 'RIGHT', Einstellen 'RETURN'") ; + line ; + selektor (setup text, setup choice, FALSE) ; + line ; + line ; + selektor (kanal text, kanal, FALSE) ; + line ; + line ; + out (" ") ; put (baudrates (kanal)) ; out (" ") ; + line ; + line ; + selektor (datenbits text, datenbits (kanal), FALSE) ; + line ; + line ; + selektor (stopbits text, stopbits (kanal), FALSE) ; + line ; + line ; + selektor (parity text, parity (kanal), FALSE) ; + line ; + line ; + selektor (flowmode text, flowmode (kanal), FALSE) ; + line ; + line ; + line ; + line ; + putline (" --------------------------------------------------------------------------") ; + out (home) . +ENDPROC init setup ; + +ENDPACKET setup ; + + diff --git a/system/ruc-terminal/unknown/src/Terminal108(ascii) b/system/ruc-terminal/unknown/src/Terminal108(ascii) new file mode 100644 index 0000000..71e335c --- /dev/null +++ b/system/ruc-terminal/unknown/src/Terminal108(ascii) @@ -0,0 +1,121 @@ + (* Terminaltyp: Terminal108 *) + (* Keyboard : Deutsch *) + (* Zeichensatz: ASCII *) + (* Stand : 28.04.86 *) + +forget ("Terminal108(ascii)", quiet) ; +new type ("Terminal108(ascii)") ; + +cursor logic (32, ""30"", "", "") ; + +(* Nicht im EUMEL-Zeichensatz definierte Steuerzeichen *) +illegal (11, 12) ; +illegal (16, 31) ; +illegal (128, 213) ; +illegal (224, 250) ; +illegal (252, 255) ; + +enter outcode ( 1, 25) ; (* Cursor Home *) +enter outcode ( 2, 28) ; (* Cursor right *) +enter outcode ( 3, 31) ; (* Cursor up *) +enter outcode ( 4, 11) ; (* Clear EOP *) +enter outcode ( 5, 29) ; (* Clear EOL *) +enter outcode ( 7, 7) ; (* Bell *) +enter outcode (14, 0, " "14"") ; (* Norm Vid *) +enter outcode (15, 0, ""15" ") ; (* Inv Vid *) + +enter outcode (214, 193) ; (* Inv A *) +enter outcode (215, 207) ; (* Inv O *) +enter outcode (216, 213) ; (* Inv U *) +enter outcode (217, 225) ; (* Inv a *) +enter outcode (218, 239) ; (* Inv o *) +enter outcode (219, 245) ; (* Inv u *) +enter outcode (220, 235) ; (* Inv k *) +enter outcode (221, 173) ; (* Inv - *) +enter outcode (222, 163) ; (* Inv # *) +enter outcode (223, 160) ; (* Inv Blank *) +enter outcode (251, 194) ; (* Inv B *) + +enter outcode (64, 0, ""1"B"64"") ; (* ""1"B" = ASCII *) +enter outcode (91, 0, ""1"B"91"") ; +enter outcode (92, 0, ""1"B"92"") ; +enter outcode (93, 0, ""1"B"93"") ; +enter outcode (123,0, ""1"B"123"") ; +enter outcode (124,0, ""1"B"124"") ; +enter outcode (125,0, ""1"B"125"") ; +enter outcode (126,0, ""1"B"126"") ; +(* +enter outcode (12, 12) ; (* CLR SCRN *) +enter outcode (16, 2) ; (* Cursor Mode *) +enter outcode (17, 1) ; (* Zeichensatz : Bit 0..3 *) +enter outcode (18, 18) ; (* Insert Line *) +enter outcode (19, 26) ; (* Erase (nicht Delete) Line *) +enter outcode (20, 5) ; (* xpos := 80 *) +enter outcode (22, 22) ; (* Select Screen : Bit 0 *) +enter outcode (23, 23) ; (*SetWindow (+128)*) +*) +enter incode ( 1, ""192"") ; (* Home : Cursorblock mitte *) +enter incode ( 2, ""149"") ; (* Cursor right: Cursorblock mitte rechts *) +enter incode ( 3, ""139"") ; (* Cursor up : Cursorblock oben mitte *) +(*enter incode (4, ""21"") ; (* Info usw. : Cursorblock unten rechts*) *) +enter incode ( 7, ""194"") ; (* SV - Call : Funktionstaste F2 *) +enter incode ( 8, ""136"") ; (* Cursor left : Cursorblock mitte links *) +enter incode ( 10, ""138"") ; (* Cursor down : Cursorblock unten mitte *) +enter incode ( 11, ""142"") ; (* RUBIN/Insert: Cursorblock oben links *) +enter incode ( 12, ""127"") ; (* RUBOUT/Delete:DELETE-Taste *) +enter incode ( 16, ""143"") ; (* MARK : Cursorblock oben rechts *) +enter incode ( 17, ""193"") ; (* Stop : Funktionstaste F1 *) +enter incode ( 23, ""195"") ; (* Weiter : Funktionstaste F3 *) +enter incode ( 31, ""8"") ; (* Backspace : (2x) gerahmter Linkspfeil *) + +enter incode (214, ""91"") ; +enter incode (215, ""92"") ; +enter incode (216, ""93"") ; +enter incode (217, ""123"") ; +enter incode (218, ""124"") ; +enter incode (219, ""125"") ; +enter incode (251, ""126"") ; + +enter incode ( 0, ""24"") ; (* CE *) +enter incode ( 5, ""196"") ; (* F4 *) +enter incode ( 6, ""197"") ; (* F5 *) +enter incode (14, ""198"") ; (* F6 *) +enter incode (15, ""199"") ; (* F7 *) +enter incode (18, ""200"") ; (* F8 *) +enter incode (19, ""201"") ; (* F9 *) +enter incode (20, ""202"") ; (* F10 *) +enter incode (21, ""203"") ; (* F11 *) +enter incode (22, ""204"") ; (* F12 *) +enter incode (24, ""205"") ; (* F13 *) +enter incode (25, ""206"") ; (* F14 *) +enter incode (26, ""207"") ; (* F15 *) +enter incode (28, ""209"") ; (* SHIFT F1 *) +enter incode (29, ""210"") ; (* SHIFT F2 *) +enter incode (30, ""211"") ; (* SHIFT F3 *) + +enter incode (126,""165"") ; (* CTRL F5 *) +enter incode (91, ""166"") ; (* CTRL F6 *) +enter incode (92, ""167"") ; (* CTRL F7 *) +enter incode (93, ""168"") ; (* CTRL F8 *) +enter incode (123,""169"") ; (* CTRL F9 *) +enter incode (124,""170"") ; (* CTRL F10 *) +enter incode (125,""171"") ; (* CTRL F11 *) + +enter incode (251, ""213"") ; (* SHIFT F5 = á *) + (* SHIFT F6 = „ +Andere incodes schon Hardware- SHIFT F7 = ” +m„áig implementiert: SHIFT F8 =  + SHIFT F9 = Ž + SHIFT F10= ™ + SHIFT F11= š + SHIFT F12= Trenn-k ( k ) + SHIFT F13= Trenn-Strich ( - ) + SHIFT F14= Geschtztes Fis ( # ) + SHIFT F15= Geschtztes Blank ( ) *) + +PROC illegal (INT CONST from, to) : + INT VAR i ; + FOR i FROM from UPTO to REP + enter outcode (i, 127) + PER +ENDPROC illegal ; diff --git a/system/ruc-terminal/unknown/src/Terminal108(deutsch) b/system/ruc-terminal/unknown/src/Terminal108(deutsch) new file mode 100644 index 0000000..b6fcfcf --- /dev/null +++ b/system/ruc-terminal/unknown/src/Terminal108(deutsch) @@ -0,0 +1,122 @@ + (* Terminaltyp: Terminal108 *) + (* Keyboard : Deutsch *) + (* Zeichensatz: Deutsch *) + (* Stand : 28.04.86 *) + +forget ("Terminal108(deutsch)", quiet) ; +new type ("Terminal108(deutsch)") ; + +cursor logic (32, ""30"", "", "") ; + +(* Nicht im EUMEL-Zeichensatz definierte Steuerzeichen *) +illegal (11, 12) ; +illegal (16, 31) ; +illegal (128, 213) ; +illegal (224, 250) ; +illegal (252, 255) ; + +enter outcode (91, 0, ""15"("14"") ; +enter outcode (92, 0, ""15"/"14"") ; +enter outcode (93, 0, ""15")"14"") ; +enter outcode (123, 0, ""15"<"14"") ; +enter outcode (124, 0, ""15"!"14"") ; +enter outcode (125, 0, ""15">"14"") ; +enter outcode (126, 0, ""15"`"14"") ; + +enter outcode (214, 0, ""1"D"91"") ; (* ""1"D" = Deutsch *) +enter outcode (215, 0, ""1"D"92"") ; +enter outcode (216, 0, ""1"D"93"") ; +enter outcode (217, 0, ""1"D"123"") ; +enter outcode (218, 0, ""1"D"124"") ; +enter outcode (219, 0, ""1"D"125"") ; +enter outcode (220, 235) ; (* Inv k *) +enter outcode (221, 173) ; (* Inv - *) +enter outcode (222, 163) ; (* Inv # *) +enter outcode (223, 160) ; (* Inv Blank *) +enter outcode (251, 0, ""1"D"126"") ; + +enter outcode ( 1, 25) ; (* Cursor Home *) +enter outcode ( 2, 28) ; (* Cursor right *) +enter outcode ( 3, 31) ; (* Cursor up *) +enter outcode ( 4, 11) ; (* Clear EOP *) +enter outcode ( 5, 29) ; (* Clear EOL *) +enter outcode ( 7, 7) ; (* Bell *) +enter outcode (14, 0, " "14"") ; (* Norm Vid *) +enter outcode (15, 0, ""15" ") ; (* Inv Vid *) +(* +enter outcode (12, 12) ; (* CLR SCRN *) +enter outcode (16, 2) ; (* Cursor Mode *) +enter outcode (17, 1) ; (* Zeichensatz : Bit 0..3 *) +enter outcode (18, 18) ; (* Insert Line *) +enter outcode (19, 26) ; (* Erase (nicht Delete) Line *) +enter outcode (20, 5) ; (* xpos := 80 *) +enter outcode (22, 22) ; (* Select Screen : Bit 0 *) +enter outcode (23, 23) ; (*SetWindow (+128)*) +*) +enter incode ( 1, ""192"") ; (* Home : Cursorblock mitte *) +enter incode ( 2, ""149"") ; (* Cursor right: Cursorblock mitte rechts *) +enter incode ( 3, ""139"") ; (* Cursor up : Cursorblock oben mitte *) +(*enter incode (4, ""21"") ; (* Info usw. : Cursorblock unten rechts*) *) +enter incode ( 7, ""194"") ; (* SV - Call : Funktionstaste F2 *) +enter incode ( 8, ""136"") ; (* Cursor left : Cursorblock mitte links *) +enter incode ( 10, ""138"") ; (* Cursor down : Cursorblock unten mitte *) +enter incode ( 11, ""142"") ; (* RUBIN/Insert: Cursorblock oben links *) +enter incode ( 12, ""127"") ; (* RUBOUT/Delete:DELETE-Taste *) +enter incode ( 16, ""143"") ; (* MARK : Cursorblock oben rechts *) +enter incode ( 17, ""193"") ; (* Stop : Funktionstaste F1 *) +enter incode ( 23, ""195"") ; (* Weiter : Funktionstaste F3 *) +enter incode ( 31, ""8"") ; (* Backspace : (2x) gerahmter Linkspfeil *) + +enter incode (214, ""91"") ; +enter incode (215, ""92"") ; +enter incode (216, ""93"") ; +enter incode (217, ""123"") ; +enter incode (218, ""124"") ; +enter incode (219, ""125"") ; +enter incode (251, ""126"") ; + +enter incode ( 0, ""24"") ; (* CE *) +enter incode ( 5, ""196"") ; (* F4 *) +enter incode ( 6, ""197"") ; (* F5 *) +enter incode (14, ""198"") ; (* F6 *) +enter incode (15, ""199"") ; (* F7 *) +enter incode (18, ""200"") ; (* F8 *) +enter incode (19, ""201"") ; (* F9 *) +enter incode (20, ""202"") ; (* F10 *) +enter incode (21, ""203"") ; (* F11 *) +enter incode (22, ""204"") ; (* F12 *) +enter incode (24, ""205"") ; (* F13 *) +enter incode (25, ""206"") ; (* F14 *) +enter incode (26, ""207"") ; (* F15 *) +enter incode (28, ""209"") ; (* SHIFT F1 *) +enter incode (29, ""210"") ; (* SHIFT F2 *) +enter incode (30, ""211"") ; (* SHIFT F3 *) + +enter incode (126,""165"") ; (* CTRL F5 *) +enter incode (91, ""166"") ; (* CTRL F6 *) +enter incode (92, ""167"") ; (* CTRL F7 *) +enter incode (93, ""168"") ; (* CTRL F8 *) +enter incode (123,""169"") ; (* CTRL F9 *) +enter incode (124,""170"") ; (* CTRL F10 *) +enter incode (125,""171"") ; (* CTRL F11 *) + +enter incode (251, ""213"") ; (* SHIFT F5 = á *) + (* SHIFT F6 = „ +Andere incodes schon Hardware- SHIFT F7 = ” +m„áig implementiert: SHIFT F8 =  + SHIFT F9 = Ž + SHIFT F10= ™ + SHIFT F11= š + SHIFT F12= Trenn-k ( k ) + SHIFT F13= Trenn-Strich ( - ) + SHIFT F14= Geschtztes Fis ( # ) + SHIFT F15= Geschtztes Blank ( ) *) + +PROC illegal (INT CONST from, to) : + INT VAR i ; + FOR i FROM from UPTO to REP + enter outcode (i, 127) + PER +ENDPROC illegal ; + + diff --git a/system/ruc-terminal/unknown/src/ructerm.apl-german b/system/ruc-terminal/unknown/src/ructerm.apl-german new file mode 100644 index 0000000..9b4bdf1 --- /dev/null +++ b/system/ruc-terminal/unknown/src/ructerm.apl-german @@ -0,0 +1,125 @@ + (* Terminaltyp: ructerm *) + (* Keyboard : Deutsch *) + (* Zeichensatz: Universal*) + (* Stand : 08.10.86 *) + (* Mit 'info'-Taste auf => *) + +forget ("ructerm.apl/german", quiet) ; +new type ("ructerm.apl/german") ; + +enter outcode (11, 253) ; (* links Pfeil *) +enter outcode (12, 221) ; (* rechts Pfeil *) +enter outcode (16, 240) ; +enter outcode (17, 241) ; +enter outcode (18, 242) ; +enter outcode (19, 243) ; +enter outcode (20, 244) ; +enter outcode (21, 245) ; +enter outcode (22, 246) ; +enter outcode (23, 247) ; +enter outcode (24, 248) ; + +cursor logic (32, ""27"=", "", "") ; + +(* Ausgabe Codes : *) +enter outcode ( 1, 30) ; (* Cursor Home : *) +enter outcode ( 2, 12) ; (* Cursor right: *) +enter outcode ( 3, 11) ; (* Cursor up : *) +enter outcode ( 4, 0, ""27"Y"27"z7") ; (* CLEOP und Zeichensatz : Y *) +enter outcode ( 5, 0, ""27"T") ; (* CLEOL : T *) +enter outcode ( 8, 8) ; (* Cursor left : *) +enter outcode ( 10, 10) ; (* Cursor down : *) +enter outcode ( 13, 13) ; (* CR : *) +enter outcode ( 14, 175) ; (* END MARK : Spitz. Klammer zu *) +enter outcode ( 15, 192) ; (* BEGIN MARK : Spitz. Klammer auf *) + +enter outcode (214, 91) ; (* Ae *) +enter outcode (215, 92) ; (* Oe *) +enter outcode (216, 93) ; (* Ue *) +enter outcode (217, 123) ; (* ae *) +enter outcode (218, 124) ; (* oe *) +enter outcode (219, 125) ; (* ue *) +enter outcode (220, 235) ; (* Trenn-k *) +enter outcode (221, 191) ; (* Trennstrich *) +enter outcode (222, 188) ; (* Fest-# = Raute *) +enter outcode (223, 160) ; (* Fest-Blank *) +enter outcode (251, 126) ; (* sz *) +enter outcode (252, 64) ; (* paragraph *) + +enter outcode (64, 131) ; (* At-Sign *) +enter outcode (91, 252) ; (* Eck. Klammer auf *) +enter outcode (92, 223) ; (* Backslash *) +enter outcode (93, 251) ; (* Eck. Klammer zu *) +enter outcode (123, 167) ; (* Geschw. Klammer auf *) +enter outcode (124, 205) ; (* Senkr. Strich *) +enter outcode (125, 163) ; (* Geschw. Klammer zu *) +enter outcode (126, 212) ; (* Tilde *) + +enter outcode (144, 214) ; (* Zeichen mit Umlautcodes *) +enter outcode (145, 215) ; (* verlegen *) +enter outcode (146, 216) ; +enter outcode (147, 217) ; +enter outcode (148, 218) ; +enter outcode (149, 219) ; +enter outcode (150, 220) ; +enter outcode (151, 221) ; +enter outcode (152, 222) ; + +enter incode ( 1, ""192"") ; (* Home : Cursorblock mitte *) +enter incode ( 2, ""149"") ; (* Cursor right: Cursorblock mitte rechts *) +enter incode ( 3, ""139"") ; (* Cursor up : Cursorblock oben mitte *) +enter incode ( 4, ""21"") ; (* Info usw. : Cursorblock unten rechts *) +enter incode ( 7, ""194"") ; (* SV - Call : Funktionstaste F2 *) +enter incode ( 8, ""136"") ; (* Cursor left : Cursorblock mitte links *) +enter incode ( 10, ""138"") ; (* Cursor down : Cursorblock unten mitte *) +enter incode ( 11, ""142"") ; (* RUBIN/Insert: Cursorblock oben links *) +enter incode ( 12, ""127"") ; (* RUBOUT/Delete:DELETE-Taste *) +enter incode ( 16, ""143"") ; (* MARK : Cursorblock oben rechts *) +enter incode ( 17, ""193"") ; (* Stop : Funktionstaste F1 *) +enter incode ( 23, ""195"") ; (* Weiter : Funktionstaste F3 *) +enter incode ( 31, ""8"") ; (* Backspace : (2x) gerahmter Linkspfeil *) + +enter incode (214, ""91"") ; +enter incode (215, ""92"") ; +enter incode (216, ""93"") ; +enter incode (217, ""123"") ; +enter incode (218, ""124"") ; +enter incode (219, ""125"") ; +enter incode (251, ""126"") ; + +enter incode ( 0, ""24"") ; (* CE *) +enter incode ( 5, ""196"") ; (* F4 *) +enter incode ( 6, ""197"") ; (* F5 *) +enter incode (14, ""198"") ; (* F6 *) +enter incode (15, ""199"") ; (* F7 *) +enter incode (18, ""200"") ; (* F8 Insert Line *) +enter incode (19, ""201"") ; (* F9 *) +enter incode (20, ""202"") ; (* F10 *) +enter incode (21, ""203"") ; (* F11 *) +enter incode (22, ""204"") ; (* F12 *) +enter incode (24, ""205"") ; (* F13 *) +enter incode (25, ""206"") ; (* F14 *) +enter incode (26, ""207"") ; (* F15 *) +enter incode (28, ""209"") ; (* SHIFT F1 *) +enter incode (29, ""210"") ; (* SHIFT F2 *) +enter incode (30, ""211"") ; (* SHIFT F3 *) + +enter incode (126,""165"") ; (* CTRL F5 *) +enter incode (91, ""166"") ; (* CTRL F6 *) +enter incode (92, ""167"") ; (* CTRL F7 *) +enter incode (93, ""168"") ; (* CTRL F8 *) +enter incode (123,""169"") ; (* CTRL F9 *) +enter incode (124,""170"") ; (* CTRL F10 *) +enter incode (125,""171"") ; (* CTRL F11 *) + + (* SHIFT F6 = „ +Andere incodes schon Hardware- SHIFT F7 = ” +m„áig implementiert: SHIFT F8 =  + SHIFT F9 = Ž + SHIFT F10= ™ + SHIFT F11= š + SHIFT F12= Trenn-k ( k ) + SHIFT F13= Trenn-Strich ( - ) + SHIFT F14= Geschtztes Fis ( # ) + SHIFT F15= Geschtztes Blank ( ) *) + diff --git a/system/ruc-terminal/unknown/src/ructerm.ascii b/system/ruc-terminal/unknown/src/ructerm.ascii new file mode 100644 index 0000000..4b5cddd --- /dev/null +++ b/system/ruc-terminal/unknown/src/ructerm.ascii @@ -0,0 +1,94 @@ + (* Terminaltyp: ructerm *) + (* Keyboard : Deutsch *) + (* Zeichensatz: Ascii *) + (* Stand : 08.10.86 *) + (* Mit 'info'-Taste auf => *) + +forget ("ructerm.ascii", quiet) ; +new type ("ructerm.ascii") ; + +cursor logic (32, ""27"=", "", "") ; + +(* Ausgabe Codes : *) +enter outcode ( 1, 30) ; (* Cursor Home : *) +enter outcode ( 2, 12) ; (* Cursor right: *) +enter outcode ( 3, 11) ; (* Cursor up : *) +enter outcode ( 4, 0, ""27"Y") ; (* CLEOP : Y *) +enter outcode ( 5, 0, ""27"T") ; (* CLEOL : T *) +enter outcode ( 8, 8) ; (* Cursor left : *) +enter outcode ( 10, 10) ; (* Cursor down : *) +enter outcode ( 13, 13) ; (* CR : *) +enter outcode ( 14, 0, " "27"(") ; (* END MARK : ( *) +enter outcode ( 15, 0, ""27") ") ; (* BEGIN MARK : ) *) + +enter outcode (214, 193) ; (* Ae *) +enter outcode (215, 207) ; (* Oe *) +enter outcode (216, 213) ; (* Ue *) +enter outcode (217, 225) ; (* ae *) +enter outcode (218, 239) ; (* oe *) +enter outcode (219, 245) ; (* ue *) +enter outcode (220, 235) ; (* Trenn-k *) +enter outcode (221, 173) ; (* Trennstrich *) +enter outcode (222, 163) ; (* Fest-# *) +enter outcode (223, 160) ; (* Fest-Blank *) +enter outcode (251, 194) ; (* sz *) +enter outcode (252, 192) ; (* paragraph *) + +enter incode ( 1, ""192"") ; (* Home : Cursorblock mitte *) +enter incode ( 2, ""149"") ; (* Cursor right: Cursorblock mitte rechts *) +enter incode ( 3, ""139"") ; (* Cursor up : Cursorblock oben mitte *) +enter incode ( 4, ""21"") ; (* Info usw. : Cursorblock unten rechts *) +enter incode ( 7, ""194"") ; (* SV - Call : Funktionstaste F2 *) +enter incode ( 8, ""136"") ; (* Cursor left : Cursorblock mitte links *) +enter incode ( 10, ""138"") ; (* Cursor down : Cursorblock unten mitte *) +enter incode ( 11, ""142"") ; (* RUBIN/Insert: Cursorblock oben links *) +enter incode ( 12, ""127"") ; (* RUBOUT/Delete:DELETE-Taste *) +enter incode ( 16, ""143"") ; (* MARK : Cursorblock oben rechts *) +enter incode ( 17, ""193"") ; (* Stop : Funktionstaste F1 *) +enter incode ( 23, ""195"") ; (* Weiter : Funktionstaste F3 *) +enter incode ( 31, ""8"") ; (* Backspace : (2x) gerahmter Linkspfeil *) + +enter incode (214, ""91"") ; +enter incode (215, ""92"") ; +enter incode (216, ""93"") ; +enter incode (217, ""123"") ; +enter incode (218, ""124"") ; +enter incode (219, ""125"") ; +enter incode (251, ""126"") ; + +enter incode ( 0, ""24"") ; (* CE *) +enter incode ( 5, ""196"") ; (* F4 *) +enter incode ( 6, ""197"") ; (* F5 *) +enter incode (14, ""198"") ; (* F6 *) +enter incode (15, ""199"") ; (* F7 *) +enter incode (18, ""200"") ; (* F8 Insert Line *) +enter incode (19, ""201"") ; (* F9 *) +enter incode (20, ""202"") ; (* F10 *) +enter incode (21, ""203"") ; (* F11 *) +enter incode (22, ""204"") ; (* F12 *) +enter incode (24, ""205"") ; (* F13 *) +enter incode (25, ""206"") ; (* F14 *) +enter incode (26, ""207"") ; (* F15 *) +enter incode (28, ""209"") ; (* SHIFT F1 *) +enter incode (29, ""210"") ; (* SHIFT F2 *) +enter incode (30, ""211"") ; (* SHIFT F3 *) + +enter incode (126,""165"") ; (* CTRL F5 *) +enter incode (91, ""166"") ; (* CTRL F6 *) +enter incode (92, ""167"") ; (* CTRL F7 *) +enter incode (93, ""168"") ; (* CTRL F8 *) +enter incode (123,""169"") ; (* CTRL F9 *) +enter incode (124,""170"") ; (* CTRL F10 *) +enter incode (125,""171"") ; (* CTRL F11 *) + + (* SHIFT F6 = „ +Andere incodes schon Hardware- SHIFT F7 = ” +m„áig implementiert: SHIFT F8 =  + SHIFT F9 = Ž + SHIFT F10= ™ + SHIFT F11= š + SHIFT F12= Trenn-k ( k ) + SHIFT F13= Trenn-Strich ( - ) + SHIFT F14= Geschtztes Fis ( # ) + SHIFT F15= Geschtztes Blank ( ) *) + -- cgit v1.2.3