This is a combined and optimized version of the two scoreboard programs for Tridom and Skat. To make it easy to use it's recommended to stick some sticky notes on your calculator using different colors for the two programs:
The image shows the usage instructions, for more details see Tridom
https://www.hpmuseum.org/forum/thread-10563.html and the Skat program is over there:
https://www.hpmuseum.org/forum/thread-13222.html.
Code
Code:
# Tridom + Skat scoreboards.
<Player Count> GSB 8 -> Tridom with players
GSB 9 -> Skat
LBL
0 : [Skat] give R4 points to Player X
1 : [Skat] IF NOT x = currentPlayer THEN give Player X R4 points
2 : [Skat] Print player R0
3 :
4 : [Skat] WIN -> give points to other players
5 : [Skat] LOSE -> points*2 to current player
6 : [Skat] Switch to Player X
7 : [Tridom] init loop
8 : [Tridom] init
9 : [Skat] init
A : [Tridom] add points ; [Skat] select player 1
B : [Tridom] -5 ; [Skat] select player 2
C : [Tridom] -10 next ; [Skat] select player 3
D : [Tridom] prev ; [Skat] GTO 4
E : [Tridom] next : [Skat] GTO 5
# Tridom/Tri-Ominos
LBL 8 ; reset, set players
CF 0 ; tridom mode
STO 0 ; player in register 0
STO I
LBL 7
RCL I
EEX
9
*
STO (i)
DSE
GTO 7
1
STO I
RCL (i)
RTN
LBL A ; add points
1
F? 0
GTO 6 ; Skat A
R_down
ENTER
ENTER
EEX
6
*
+
RCL (i)
+
STO (i)
PSE
GTO E
LBL B ; 5 penalty points
2
F? 0
GTO 6
RCL (i)
4
9
9
5
+
STO (i)
RTN
LBL C ; 10 pp, next player
3
F? 0
GTO 6
GSB B
GSB B
PSE
LBL E ; next player
F? 0
GTO 5
RCL 0
RCL I
1
+
x>y
1
STO I
RCL (i)
RTN
LBL D ; previous player
F? 0
GTO 4
RCL I
1
-
x=0
RCL 0
STO I
RCL (i)
RTN
; SKAT
R0 currentPlayer
R1-3 select player 1-3
R4 score to add
LBL 9 ; init
SF 0
FIX 7
1
STO 1
2
STO 2
3
STO 3
1
LBL 6 ; Switch to player X
STO 0
LBL 2 ; print current player R0
RCL 0
STO I
RCL (i)
RTN
LBL 5 ; win: add points for losers
STO 4
1
GSB 1 ; if X not...
2
GSB 1 ; if X not...
3
GSB 1 ; if X not...
GTO 2 ; print player R0 -> INLINE
LBL 1 ; if X not current player then give R4 points
RCL 0
x<>y
x#y
GTO 0 ; add score R4 to player X
RTN
LBL 4 ; lose -> twice bad points
2
*
STO 4
RCL 0
LBL 0 ; add score R4 to player X
STO I
RCL (i)
FRAC ; remove player number
EEX
4
*
RCL 4
+
INT ; remove money
ENTER
ENTER
1 ;
9 ; to round up instead of mathematically
+ ;
4
EEX
3
/
+ ; append newly calculated money
EEX
4
/ ; shift all after decimal
FIX 6
RND ; round up to 10 cent increments
FIX 7
RCL I
+ ; add player number
STO (i)
RTN
Listing for entry
Code:
TRIDOM & SKAT
CC BY 2019 MICHAEL ZINN
001 LBL 8 | 42 21 8
002 CF 0 | 43 5 0
003 STO 0 | 44 0
004 STO I | 44 25
005 LBL 7 | 42 21 7
006 RCL I | 45 25
007 EEX | 26
008 9 | 9
009 × | 20
010 STO (i) | 44 24
011 DSE | 42 5
012 GTO 7 | 22 7
013 1 | 1
014 STO I | 44 25
015 RCL (i) | 45 24
016 RTN | 43 32
017 LBL A | 42 21 11
018 1 | 1
019 F? 0 | 43 6 0
020 GTO 6 | 22 6
021 R_down | 33
022 ENTER | 36
023 ENTER | 36
024 EEX | 26
025 6 | 6
026 × | 20
027 + | 40
028 RCL (i) | 45 24
029 + | 40
030 STO (i) | 44 24
031 PSE | 42 31
032 GTO E | 22 15
033 LBL B | 42 21 12
034 2 | 2
035 F? 0 | 43 6 0
036 GTO 6 | 22 6
037 RCL (i) | 45 24
038 4 | 4
039 9 | 9
040 9 | 9
041 5 | 5
042 + | 40
043 STO (i) | 44 24
044 RTN | 43 32
045 LBL C | 42 21 13
046 3 | 3
047 F? 0 | 43 6 0
048 GTO 6 | 22 6
049 GSB B | 32 12
050 GSB B | 32 12
051 PSE | 42 31
052 LBL E | 42 21 15
053 F? 0 | 43 6 0
054 GTO 5 | 22 5
055 RCL 0 | 45 0
056 RCL I | 45 25
057 1 | 1
058 + | 40
059 X>Y | 42 20
060 1 | 1
061 STO I | 44 25
062 RCL (i) | 45 24
063 RTN | 43 32
064 LBL D | 42 21 14
065 F? 0 | 43 6 0
066 GTO 4 | 22 4
067 RCL I | 45 25
068 1 | 1
069 - | 30
070 X=0 | 43 40
071 RCL 0 | 45 0
072 STO I | 44 25
073 RCL (i) | 45 24
074 RTN | 43 32
075 LBL 9 | 42 21 9
076 SF 0 | 43 4 0
077 FIX 7 | 42 7 7
078 1 | 1
079 STO 1 | 44 1
080 2 | 2
081 STO 2 | 44 2
082 3 | 3
083 STO 3 | 44 3
084 1 | 1
085 LBL 6 | 42 21 6
086 STO 0 | 44 0
087 LBL 2 | 42 21 2
088 RCL 0 | 45 0
089 STO I | 44 25
090 RCL (i) | 45 24
091 RTN | 43 32
092 LBL 5 | 42 21 5
093 STO 4 | 44 4
094 1 | 1
095 GSB 1 | 32 1
096 2 | 2
097 GSB 1 | 32 1
098 3 | 3
099 GSB 1 | 32 1
100 GTO 2 | 22 2
101 LBL 1 | 42 21 1
102 RCL 0 | 45 0
103 X<>Y | 34
104 X≠Y | 42 30
105 GTO 0 | 22 0
106 RTN | 43 32
107 LBL 4 | 42 21 4
108 2 | 2
109 × | 20
110 STO 4 | 44 4
111 RCL 0 | 45 0
112 LBL 0 | 42 21 0
113 STO I | 44 25
114 RCL (i) | 45 24
115 FRAC | 42 44
116 EEX | 26
117 4 | 4
118 × | 20
119 RCL 4 | 45 4
120 + | 40
121 INT | 43 44
122 ENTER | 36
123 ENTER | 36
124 1 | 1
125 9 | 9
126 + | 40
127 4 | 4
128 EEX | 26
129 3 | 3
130 ÷ | 10
131 + | 40
132 EEX | 26
133 4 | 4
134 ÷ | 10
135 FIX 6 | 42 7 6
136 RND | 43 34
137 FIX 7 | 42 7 7
138 RCL I | 45 25
139 + | 40
140 STO (i) | 44 24
141 RTN | 43 32
Print version is in the attachments.