(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
 Michael Zinn Member Posts: 56 Joined: Mar 2018
(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:

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)