HP-67 FUN rom documentation thread
|
11-30-2016, 05:07 PM
Post: #1
|
|||
|
|||
HP-67 FUN rom documentation thread
This thread is to complete the documentation for the newly created 67FUN rom.
Here is a link to the PDF of the current 67 FUN rom manual: 67 FUN rom manual PDF Feel free to make corrections, etc. Proofing is great! There are some items that still need to be done. By PROGRAM, here is what is needed. 2636 - Need information for usage of labels and registers CH - Need information for usage of labels and registers (Chess game) GOLF - Need information for usage of labels and registers OAB - Need information for usage of labels and registers (One Arm Bandit) TTT - Need information for usage of labels and registers (Tic Tac Toe) AOS - Need information on usage of labels ONLY JT - Need information on usage of labels ONLY (Jive Turkey) ML - Need information on usage of labels ONLY (Moon Lander) ART - Needs a sample game, instructions and information on usage of labels and registers (Artillery) BSP - Needs a sample game, instructions and information on usage of labels and registers (Battleship) SPW - Needs a sample game, instructions and information on usage of labels and registers (SpaceWar) ST - Needs a sample game, instructions and information on usage of labels and registers (Star Trek) SD - done (Sum of digits) CHK - done (Chuck-a-luck) R and S - done (Random Number and Seed) RF - done (Reset flags) How can anyone help? For example, if you wish to help with GOLF, determine what some or all of the registers or labels are used for, then post that information here and I will incorporate it into the document and update the PDF / link. There are four of the games that still need most of the work to be done. I'm working on them, but if someone else wishes to jump in, please help. I would really love to have this be a very detailed manual so these programs can be enjoyed by a number of people. So who is able to help? :-) |
|||
11-30-2016, 07:23 PM
(This post was last modified: 11-30-2016 08:01 PM by Dieter.)
Post: #2
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(11-30-2016 05:07 PM)Gene Wrote: There are some items that still need to be done. By PROGRAM, here is what is needed. OK, here is some first information. ============================================================ "2636" Registers: Game of 26: 00: random seed 01: bank 02: counts occurences of user's number 03: loop counter (13 runs) 04: loop counter (10 dice per run) 05: user's number, amount won/lost Game of 36: 00: random seed 01: bank 02: control number for indirect call (8=user, 9=HP) 03: user's score 04: HP's score 05: bet Relevant Labels: A: Start game of 26 B: Enter bet, start game of 36, user first C: Enter bet, start game of 36, HP first D: show bank 08: user rolls a die 09: HP rolls a die 77: roll a die, display scores, check if > 36. 88: adjust and display amount won/lost, show bank 99: roll a die (random number between 1 and 6) 00...03, 06, 07: used Flags: 00: set if score > 36 01: set=user first, clear=HP first ============================================================ "CH" Registers: 01: move counter Relevant Labels: 01: append "P" for pawn 02: append "N" for knight 03: append "B" for bishop 04: append "R" for rook 05: append "Q" for queen 06: append "K" for king 07: display HP's move (calls 98), get user's move and divide by 10 08: second last move 09: display final move, "checkmate" 98: decode move, generate Alpha incl. "check" (if applicable) 99: display HP's move (calls 98), get user's move 00, 10...15: used ============================================================ "GOLF" Registers: 00: random seed 01: distance to hole 02: modified user input at E, loop counter 03: user input at B, C, D 04: shot counter Labels: 01: used 02: putter loop 03: displays distance to hole in yards or feet 04: reads and checks user input at B, C, D A: new game B: Enter 1..4, hit a wood club C: Enter 1..9, hit an iron D: Enter 1..3, hit a wedge E: Enter 1..15, use the putter ============================================================ I would rather see XROM "S" and XROM "R" in the listings (instead of 23,25 and 23,26). The seed does not require at least 6 decimals, not even preferably. Actually it does not matter whether you enter 0,3 or 0,345678 – one is as good as the other. The seed should have at most 9 decimals, preferably up to 6. "GOLF": Typo at 2b): "shows" instead of "shots". "JT": the instructions should say that the secret number is between 0 and 99. ;-) "CHK": the instructions need some major corrections. The output is different from what's mentioned there (nothing "left or right of the decimal point", missing WIN/PAY message, first example should read 5, 56, 566, etc.). "SD": I posted an optimized version that requires less registers (and clears flag 29 ;-)). Obviously it did not make it into the ROM. Dieter |
|||
11-30-2016, 08:22 PM
(This post was last modified: 11-30-2016 10:01 PM by Gene.)
Post: #3
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
Great!
The PDF in the original post links to the updated PDF with the changes Dieter suggested. It also has more information for the SPW (SpaceWar) game. More to come! Note as well... I have every intention of doing the sample games for BSP and ART, etc. Just haven't done them yet. It is the more technical details that are missing for programs I did not re-write that are important. :-) thanks all. That link is also the same as this one if anyone wants to pull it down from here: 67 FUN rom write-up PDF |
|||
11-30-2016, 10:18 PM
(This post was last modified: 11-30-2016 10:29 PM by Dieter.)
Post: #4
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(11-30-2016 08:22 PM)Gene Wrote: The PDF in the original post links to the updated PDF. There are some typos in the updated information. And JT still has some errors: 1) XEQ "JT" 2) Calculator will ask for the probability of an honest answer (1...100%) 3) Start a new game with B, calculator will generate... 4) Enter your guess for this number and press C (!) 5) Depending on... ...and press C (!) again... 6) ... 7) ...return to step 4 to continue. Labels: A: Set honesty, reset guess counter B: Start a new game C: Check guess D: Display number of guesses The listings and instructions now show the RNG functions as XEQ "R" and XEQ "S". I think this should be XROM "R" resp. XROM "S", like it is displayed on the 41. "ML": you should mention the flashing display of the final touchdown speed. "OAB" registers: R00: random seed R01: number of remaining games R02: bank/pot R03: three-digit number R04: constant 10 (arghh... should have removed that!) R05: first digit R06: second digit R07: third digit LBL 01: display remaining games and stop LBL 02: random number generator (1..9) LBL 04: store first digit LBL 05: store second digit LBL 09: check for 123, 246, 369 etc. Flags: 00: hold at least one digit 01: hold first digit 02: hold second digit 03: hold third digit Dieter |
|||
11-30-2016, 10:34 PM
Post: #5
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
Great. All these changes are made and should be "live" in the PDF.
I looked over the CHK listing and I didn't see anything else wrong as before. Note that I changed the example so that one of the games played was a win. |
|||
11-30-2016, 11:01 PM
Post: #6
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(11-30-2016 10:34 PM)Gene Wrote: I looked over the CHK listing and I didn't see anything else wrong as before. Note that I changed the example so that one of the games played was a win. My post originally said "CHK still has some errors", but the following corrections refer to JT... #-) So I updated my post a few minutes before you posted your reply. Sorry for the confusion. Dieter |
|||
12-01-2016, 12:19 AM
(This post was last modified: 12-01-2016 12:30 AM by Dieter.)
Post: #7
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(11-30-2016 10:34 PM)Gene Wrote: Great. All these changes are made and should be "live" in the PDF. A note on TTT: The program always displays the three rows of the board (FIX 3) and finally the complete board (FIX 9). Especially during the first moves two adjacent rows of the board may be identical, so there are two pause displays with the same numbers which may be hard to distinguish on a fast emulator. However, on a real device (or e.g. on V41 set to a realistic speed) this is no problem, an additional CLD makes sure the rows are properly separated. The example in the PDF is a bit misleading here. It should look more like this: After XEQ "TTT" the initial board with the calculator's first move is displayed: 1.000 1.000 1.010 ...followed by the move (2) and the complete board display (right of decimal point): 2.010000000 Now the player selects the lower left corner: 1 [R/S] And the next move of the calculator (center) is displayed. 2.000 2.010 2.210 5.210010000 ...etc. etc. If a printer is connected, the 3-digit board display should also be printed while the final overview only appears in the display. Instead of R/S the player can also press B to enter his move. C re-displays the board. After this the next move can again be entered via R/S or B. LBL A: start game LBL B: enter move (or simply press R/S) LBL C: display board LBL 01...09: Return possible moves for board position 1...9 Since position 2 is initally occupied by the calculator there is no LBL 02 LBL 10: x=1: record HP's move, x=2: record player's move, both stored in R02 LBL 11: display one row of the board LBL 12: determine HP's move after first move of player LBL 13: record HP's move on board LBL 14: split off next digit from R03 R00: move counter R01: complete board R02: HP's or player's move R03: calculator's move (digits represent fields to choose after 1st, 2nd, ... move) Dieter |
|||
12-01-2016, 02:31 AM
Post: #8
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
PDF has been updated with TTT material. I think the example game gives a better feel now. Thank you.
|
|||
12-01-2016, 04:42 PM
Post: #9
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
PDF in this thread has been updated with instructions and sample game for the BSP Battleship program now.
|
|||
12-01-2016, 04:50 PM
Post: #10
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
There are some items that still need to be done. By PROGRAM, here is what is needed.
AOS - Need information on usage of labels ONLY ML - Need information on usage of labels ONLY (Moon Lander) BSP - Needs information on usage of labels and registers (Battleship) ART - Needs a sample game, instructions and information on usage of labels and registers (Artillery) SPW - Needs a sample game, instructions and information on usage of labels and registers (SpaceWar) ST - Needs a sample game, instructions and information on usage of labels and registers (Star Trek) TTT - done (Tic Tac Toe) 2636 - done CH - done (Chess game) GOLF - done OAB - done (One Arm Bandit) SD - done (Sum of digits) JT - done CHK - done (Chuck-a-luck) R and S - done (Random Number and Seed) RF - done (Reset flags) |
|||
12-01-2016, 07:32 PM
(This post was last modified: 12-01-2016 08:40 PM by Dieter.)
Post: #11
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(12-01-2016 04:50 PM)Gene Wrote: AOS - Need information on usage of labels ONLY That's a tough one – many labels are used several times. The only thing I can say for sure is that LBL 99 is the common exit point for all operations. This way a following R/S will set flag 22 so that the result of a manually executed math function can be used for subsequent calcuations with the program (cf. original AOS program documentation). BTW this feature seems to be missing in the PDF. (12-01-2016 04:50 PM)Gene Wrote: ML - Need information on usage of labels ONLY (Moon Lander) LBL A: start game. LBL B: restart. This is a leftover from the original HP67 program. If the user missed the exact moment when the fuel amount has to be enterd (..."0"...) and the key is pressed too late, the running program will stop on a 67/97. Pressing B then restarts it (which will cost you 5 fuel units). On the 41 pressing keys during a running program will (mostly) not do anything, so the whole LBL B part could just as well be removed. Now that it remains included pressing B will also restart the game if you happend to have stopped it anyhow in the middle of a calculation. If there should be a revised ROM version 1.1 some time this part can be removed and with a slight modification also the use of R04 can be saved. LBL 02: out of fuel, calculate crash velocity LBL 03: display speed at touchdown LBL 04: loop for flashing display LBL 05: calculate new fuel, speed and altitude from fuel units in X LBL 09: display fuel, speed and altitude, countdown for fuel entry BTW there still is an error in TTT. Here it says "The integer 2 indicates ready for second move, the user’s". That's not correct. The "2" in the first board output is just the calculator's first move: position 2 in the center of the lower row. Like the 5, 7 and 3 in the following moves. (12-01-2016 04:50 PM)Gene Wrote: BSP - Needs information on usage of labels and registers (Battleship) Later. ;-) Edit: here we go. R00: random seed R01: battleship's position (X) R02: battleship's position (Y) R03: number of hits R04: battleship's manoevrability in X/Y direction R05: number of torpedos left LBL A: start game LBL 01: main loop (show torpedos, prompt for coordinates) LBL 02: torpedos > 0, skip "you lose" message LBL 03: ship destroyed (direct hit or 5 minor hits) LBL 04: display final win/lose message, reset display The instructions do not say that the player loses if he runs out of torpedos, i.e. after all twelve have been fired without destroying the ship. And a final remark on chess: Labels 01...06 translate the original codes 1...6 into the letters P, N, B, R, Q and K. This does not neccessarily mean that this piece (pawn, knight, ... king) is moved, it may also be used for identifying the queen's or king's rook, queen's or king's bishop etc., like in the 5th move of your example (5. B-KB4). Dieter |
|||
12-01-2016, 08:07 PM
Post: #12
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
Hopefully updated with these changes in the PDF. Fixed that pesky TTT mistake.
Added information for BSP and ART sample games / instructions. ART is difficult for me, so I must be playing very badly! Link here: PDF of 67 fun rom write-up |
|||
12-01-2016, 08:46 PM
(This post was last modified: 12-01-2016 09:12 PM by Dieter.)
Post: #13
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(12-01-2016 08:07 PM)Gene Wrote: Hopefully updated with these changes in the PDF. Fixed that pesky TTT mistake. I originally posted another error report here, but I just realized I used an old version of the PDF. #-) However, you may have noticed the BSP updates in my previous post. Edit: There is an error in ML. LBL 04 is not a loop for a flashing *countdown* display. It makes the crash/touchdown speed display flash. So a perfect smooth landing would show a flashing "0". I just managed this in my probably first ML game after 1980 when I played it on a 34C. ;-) And there is a comma missing at LBL 09. It displays fuel, speed and altitude, and then it shows the countdown for the user's fuel entry. Dieter |
|||
12-01-2016, 08:57 PM
Post: #14
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(12-01-2016 04:50 PM)Gene Wrote: SPW - Needs a sample game, instructions and information on usage of labels and registers (SpaceWar) Sent you a copy of SPW documentation. (12-01-2016 04:50 PM)Gene Wrote: ST - Needs a sample game, instructions and information on usage of labels and registers (Star Trek) Working on it... |
|||
12-01-2016, 09:08 PM
Post: #15
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
Yes, those changes / updates have been made and the PDF at the link has been updated.
What remains: 1) General proofing and testing of the sample games. Is there a typo or goof? 2) Artillery game - Better sample game? Proof instructions and add register / label information. 3) SpaceWar and StarTrek - need all the stuff. I think this is being worked on by Robert. :-) |
|||
12-01-2016, 09:17 PM
Post: #16
|
|||
|
|||
RE: HP-67 FUN rom documentation thread | |||
12-01-2016, 09:22 PM
Post: #17
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(12-01-2016 08:46 PM)Dieter Wrote: Edit: There is an error in ML. LBL 04 is not a loop for a flashing *countdown* display. It makes the crash/touchdown speed display flash. So a perfect smooth landing would show a flashing "0". I just managed this in my probably first ML game after 1980 when I played it on a 34C. ;-) And there is a comma missing at LBL 09. It displays fuel, speed and altitude, and then it shows the countdown for the user's fuel entry. Gene: Fixed these. |
|||
12-01-2016, 10:58 PM
Post: #18
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
PDF in this thread is now updated with the SpaceWar example game and instructions. Thanks Robert!
Link here: PDF |
|||
12-02-2016, 12:06 AM
Post: #19
|
|||
|
|||
RE: HP-67 FUN rom documentation thread
(12-01-2016 10:58 PM)Gene Wrote: PDF in this thread is now updated with the SpaceWar example game and instructions. Thanks Robert! Oops ... for SpaceWar, I forgot to add a line in "Instructions" (last line, after STATUS, before "Example Game") should be: Code: DOCK d Dock at the Base – must be adjacent to it |
|||
12-02-2016, 12:33 AM
Post: #20
|
|||
|
|||
RE: HP-67 FUN rom documentation thread | |||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: