Post Reply 
(11C) combined Skat and Tridom scoreboard.
07-02-2019, 12:32 PM (This post was last modified: 07-04-2019 11:54 AM by Michael Zinn.)
Post: #1
(11C) combined Skat and Tridom scoreboard.
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:

[Image: np2INxkl.jpg]

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.


Attached File(s)
.pdf  tridomskat3.pdf (Size: 13.35 KB / Downloads: 18)
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)