Post Reply 
4K HP 67 Games rom attached for testing
11-22-2016, 06:57 AM
Post: #161
RE: 4K HP 67 Games rom attached for testing
(11-22-2016 02:58 AM)Gene Wrote:  Gene: Post it! That's the filler program for the .rom and if it takes less room it might make it.

OK, here it is.

Re. PM: the user CP says I have used less than half of my PM space. ?!?

Dieter


Attached File(s)
.zip  SumDigits2.zip (Size: 614 bytes / Downloads: 6)
Find all posts by this user
Quote this message in a reply
11-23-2016, 11:07 AM
Post: #162
RE: 4K HP 67 Games rom attached for testing
Shiny, flashy ROM and Module have been sent to Gene for QA. Currently the program "1130" doesn't fit, waiting to hear from the boss on alternatives...

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
11-23-2016, 01:58 PM (This post was last modified: 11-23-2016 02:59 PM by Gene.)
Post: #163
RE: 4K HP 67 Games rom attached for testing
Yes, ugh.

The rom contains these programs of these sizes: 67FUN listing

As Angel told me:

As is: 11 bytes free
Without “SD” - Sum of Digits : 11 + 94 = 105 bytes free
“1130”s size: 132 bytes

So even if SumDigits is removed, we are 27 bytes over.

Options:

1) Go with this as-is and push 1130 to 67FUN2 sometime.

2) Remove ART (Artillery) or F67 (FollowMe) and replace with 1130. This would fit. Push the removed program to 67FUN2.

3) Remove SumDigits and find 27 bytes throughout the rom to make 1130 fit. It is **possible** of course that the programs committed so far as not the most recent / shortest routines. I've made a mistake already with that.


Thoughts team?

rom link: .rom

mod link: .mod

Note: the .mod file may be an old one (have not checked the .rom file). The .mod file has a BJ program in it (Blackjack) which was dropped some time ago. The byte counts, etc. are still relevant and the choice to make is still needed.

Here is the link to the .zip of .raw files sent to Angel that give the byte counts above: .zip
Find all posts by this user
Quote this message in a reply
11-23-2016, 06:02 PM
Post: #164
RE: 4K HP 67 Games rom attached for testing
(11-23-2016 01:58 PM)Gene Wrote:  The rom contains these programs of these sizes: 67FUN listing

The list mentions "S" as XROM 23,25 but not "R" as XROM 23,26. Does this mean the RNG has to be called with a 4-byte XEQ"R" instead of an XROM call (2 bytes)?

(11-23-2016 01:58 PM)Gene Wrote:  So even if SumDigits is removed, we are 27 bytes over.

Options:
...
2) Remove ART (Artillery) or F67 (FollowMe) and replace with 1130. This would fit. Push the removed program to 67FUN2.

If something has to be removed, I think it should be Follow Me. If I understand correctly, this is a program for a programmable calculator that simulates ...a programmable calculator. #-)

(11-23-2016 01:58 PM)Gene Wrote:  3) Remove SumDigits and find 27 bytes throughout the rom to make 1130 fit. It is **possible** of course that the programs committed so far as not the most recent / shortest routines. I've made a mistake already with that.

Hm... 27 bytes do not sound impossible. But I do not like the idea of making some programs a little worse in order to get one more program in.

Dieter
Find all posts by this user
Quote this message in a reply
11-23-2016, 06:20 PM (This post was last modified: 11-24-2016 06:28 AM by Ángel Martin.)
Post: #165
RE: 4K HP 67 Games rom attached for testing
Something in the MOD file was fishy - although there was no BJ there anymore so I'm thinking you were using an older copy?

I have attached the updated ROM image and MOD container, it checked ok on my V41.

BTW I also dislike trimming the programs any further, so I'd vote for a swap between FollowMe and 1130 - that is if 1130 is really indispensable...

Edited: removed attachment - superseded by new versions... really!

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
11-23-2016, 08:13 PM
Post: #166
RE: 4K HP 67 Games rom attached for testing
Agreed.

Angel I have emailed you the changes to make please.

Thank you.
Find all posts by this user
Quote this message in a reply
11-23-2016, 08:14 PM
Post: #167
RE: 4K HP 67 Games rom attached for testing
(11-23-2016 06:02 PM)Dieter Wrote:  The list mentions "S" as XROM 23,25 but not "R" as XROM 23,26. Does this mean the RNG has to be called with a 4-byte XEQ"R" instead of an XROM call (2 bytes)?


Gene: R is also an XROM, it just isn't shown since LBL S and LBL R are in the same program file. To call them, it will be an XROM as planned from any user program and the internal calls are XROMs.
Find all posts by this user
Quote this message in a reply
11-24-2016, 01:08 AM (This post was last modified: 11-24-2016 01:19 AM by Gene.)
Post: #168
RE: 4K HP 67 Games rom attached for testing
Ok, so here we go:

67FUN .rom file: file

67FUN .mod file: file


1) FollowMe was dropped.
2) 1130 added back.
3) RF (Reset Flags) from the PPC ROM was added. It was tiny and it's very useful to me at least, so I asked Angel to add it in.
4) Testing time.

--- I have noticed that GOLF appears to have a problem. I think it is adding one shot extra each time. I even got a hole-in-one and it said 2 shots. I did three shots and it said 4.
Find all posts by this user
Quote this message in a reply
11-24-2016, 07:05 AM (This post was last modified: 11-24-2016 07:08 AM by Dieter.)
Post: #169
RE: 4K HP 67 Games rom attached for testing
(11-24-2016 01:08 AM)Gene Wrote:  3) RF (Reset Flags) from the PPC ROM was added. It was tiny and it's very useful to me at least, so I asked Angel to add it in.

What does RF do?

(11-24-2016 01:08 AM)Gene Wrote:  --- I have noticed that GOLF appears to have a problem. I think it is adding one shot extra each time. I even got a hole-in-one and it said 2 shots. I did three shots and it said 4.

Right, Golf increments the shot counter right before the distance is displayed. This is because the program always stops at this point, regardless of what the user did. So the counter actually starts with 1 shot. Simple fix: replace the CLX in line 11 with –1. I hope we have this one more byte left. ;-)

Dieter
Find all posts by this user
Quote this message in a reply
11-24-2016, 03:06 PM
Post: #170
RE: 4K HP 67 Games rom attached for testing
Re: GOLF - I'll see if I can talk Angel into one more fix. :-)

Regarding RF, here's the link from the PPC ROM manual: RF

As I said, I became used to having it available to reset the flags to their default Memory Lost state (other than setting FIX 2 rather than FIX 4). With the extra space we had, it was something I wanted to add in. If anyone doesn't want to use it... then of course don't. No harm.

However, I would like to encourage you (and others) to download the entire PPC ROM manual and get familiar with the great work and great documentation for it.

Download the entire PPC ROM PDF here: PPC ROM Manual
Find all posts by this user
Quote this message in a reply
11-24-2016, 03:07 PM
Post: #171
RE: 4K HP 67 Games rom attached for testing
(11-24-2016 07:05 AM)Dieter Wrote:  What does RF do?

By coincidence, I had the PPC ROM manual loaded (PDF), so it's easy to answer this, straight from the manual:

"RF sets all flags to their default status, i.e.,
the state they would be in after MEMORY LOST. The
one exception is that RF sets the FIX 2 display mode
rather than FIX 4, in accordance with longstanding
HP calculator tradition. RF is a short, stand-alone
program which can be executed anytime as a cleanup
measure via the keyboard, or it can be executed during
a running program if it is desirable to have a "virgin"
d-register. RF can also be used at the end of any
user program to clean up if the program has left
several unwanted flags set."

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
11-24-2016, 07:29 PM
Post: #172
RE: 4K HP 67 Games rom attached for testing
(11-24-2016 03:06 PM)Gene Wrote:  However, I would like to encourage you (and others) to download the entire PPC ROM manual and get familiar with the great work and great documentation for it.

Download the entire PPC ROM PDF here: PPC ROM Manual

Ah, thank you very much. I have been looking for this manual for quite a while, and now I finally got a copy. ;-)

As far as I can see all this is user code, i.e. FOCAL (with lots of synthetics) instead of MCode. Was this a deliberate decision or was MCode still terra incognita in 1981?

Dieter
Find all posts by this user
Quote this message in a reply
11-24-2016, 07:33 PM
Post: #173
RE: 4K HP 67 Games rom attached for testing
(11-24-2016 03:07 PM)rprosperi Wrote:  "RF sets all flags to their default status, i.e.,
the state they would be in after MEMORY LOST. The
one exception is that RF sets the FIX 2 display mode
rather than FIX 4, in accordance with longstanding
HP calculator tradition.

Thank you very much. This leads to the question whether FIX 2 or FIX 4 can be considered the more "longstanding HP calculator tradition". ;-) AFAIK the switch to FIX 4 came with the Spice series in 1978. Since then most HP calculators use this default format. I guess there are more of these than the earlier Classics and Woodstocks with their FIX 2 format. Or am I wrong here?

Dieter
Find all posts by this user
Quote this message in a reply
11-24-2016, 07:53 PM
Post: #174
RE: 4K HP 67 Games rom attached for testing
Glad you have a copy! There is a tremendous amount of material in this 500 page manual for an 8K rom. :-)

Questions:

1) Certainly "user-written" mcode at the time of the rom was essentially terra incognito. Synthetic programming was advancing step by step. The Zenrom and CCD roms came after the PPC Rom. In fact, the 41CX and Extended functions came after the PPC ROM was made. These made a number of PPC ROM routines out of date, such as many of the alpha routines, etc.

As the PPC ROM was going to silicon the PPC ROM committee attempted to add several mcode routines written by someone at HP on their own time (Variable length pause and TONEXY (at frequency in X and duration in Y)) but these didn't work and were not debugged in time to put in and the decision was made not to wait.

2) Re: the Fix 2 vs. Fix 4, my first HP was the HP 41C which was defaulted to FIX 4 upon startup. (I have since acquired the earlier models of course!). The programmable models before the Series E (65, 55, 25, 67, 29C) which were valued much more by a majority of the PPC active user-community, were all FIX 2. Therefore, especially since the creators of the PPC ROM were of the opinion that FIX 2 was the proper startup setting, the RF routine was written to be FIX 2. I'm not as adamant for the FIX 2 vs. FIX 4, but a very nice short routine that resets the flags to ML status is a nice to have and this was a chance to put it into a .rom image other than the PPC ROM. So, carpe diem. :-)

The PPC ROM has a PPCAPPS rom image available, which holds the application programs from the PPC ROM manual that were not committed to rom due to size, such as CVPL, SC (special characters) and more.
Find all posts by this user
Quote this message in a reply
11-24-2016, 08:30 PM (This post was last modified: 11-24-2016 08:33 PM by Dieter.)
Post: #175
RE: 4K HP 67 Games rom attached for testing
(11-24-2016 07:53 PM)Gene Wrote:  Questions:
...

Thank you very much for this information from the early Eighties. At that time I did quite a lot of programming on the 41C, but over here in Europe I had absolutely no idea of what was going on beyond the ocean. OK, my 41C box contained some info about the HP41 European User's Library in Geneva (IIRC), but essentially that was all I knew. It was not until the days of the internet when I first heard about PPC, various HP publications for calculator users, and more. Back then I did not even know about the CCD ROM project although I faintly remember getting hold of a copy of CCD's "Prisma" magazine.

(11-24-2016 07:53 PM)Gene Wrote:  In fact, the 41CX and Extended functions came after the PPC ROM was made.

Yes, in 1983 resp. 1982. At that time I acquired one of the first X-Function modules available, and the new function set proved very useful. On the other hand I always tried to write programs that could run on any 41-series calculator... #-)

(11-24-2016 07:53 PM)Gene Wrote:  As the PPC ROM was going to silicon the PPC ROM committee attempted to add several mcode routines written by someone at HP on their own time (Variable length pause and TONEXY (at frequency in X and duration in Y)) but these didn't work and were not debugged in time to put in and the decision was made not to wait.

Hm, at least a variable PSE would have been nice. Today we got it in the 34s. ;-)

(11-24-2016 07:53 PM)Gene Wrote:  ... Therefore, especially since the creators of the PPC ROM were of the opinion that FIX 2 was the proper startup setting, the RF routine was written to be FIX 2. I'm not as adamant for the FIX 2 vs. FIX 4, but a very nice short routine that resets the flags to ML status is a nice to have and this was a chance to put it into a .rom image other than the PPC ROM. So, carpe diem. :-)

I did so and modified the RF routine so that it sets FIX 4 and also clears flag 28.

Dieter
Find all posts by this user
Quote this message in a reply
12-04-2016, 08:40 PM
Post: #176
RE: 4K HP 67 Games rom attached for testing
(10-24-2016 06:54 PM)Gene Wrote:  Thanks to Angel and a bit of editing, here is a 4K first stab at an HP 67 to HP 41 games rom.

So this ROM is finished now. But I think most of us will know that very special feeling when you just have finished an exam, and five minutes later you realize all the things you did wrong... ;-)

At the moment it may be a bit early for a ROM version 1.1, but maybe we can start a kind of to-do-list for a future release. For instance the game counter in OAB, or the no longer required LBL B part of the Moon Lander.

While we're at it: The ML game is very close to the original HP67/97 Standard Pac version. The look and feel is very similar. Other programs have been much more "41-ified" with Alpha messages etc. I am currently testing such a version of ML. One of the things I'd like to remove is the flashing output routine for the final speed. It looks like this is related to the original 1975 HP65 program by R. Scott (the 65 display flashed when an error occured). I would like to replace this with messages for a soft landing resp. a crash, but I'm not sure about the units. If this is ft/s a value up to 2 ft/s should be OK for a soft landing, while 2 m/s sounds more like a crash. So where do you think should the limit be set?

Dieter
Find all posts by this user
Quote this message in a reply
12-04-2016, 08:55 PM
Post: #177
RE: 4K HP 67 Games rom attached for testing
Here are what I am referring to as "bugs" in the rom. This will be on page 1 of the manual.

All that remains is the Star Trek write-up which I know Robert is working on. No rush. Then the manual will be published and we can start thinking rom version 1.1 or rom 2 and include fixes there if we have extra room. :-)

Code:
Bugs. There are four known bugs in the code, but only one of them affects game play in a minor way.

Game of 1130 – LBL “1130” –     USER mode not set by program and should be. Press USER after starting this program. If program from ram, add a line between steps 02 and 03 for this instruction: SF 27.

One Arm Bandit  – LBL “OAB” –    
    1) This is the most serious bug in the rom. Each game is supposed to cost $0.25 but the program charges the user $0.25 for each level pull (LBL E) rather than each game.
    2) While not a bug per se, you can save 7 bytes total by using a 10 in the program where RCL 04 occurs and deleting program lines 06-07: 10 STO 04.

Tic-Tac-Toe – LBL “TTT” –     Flag 05 is set in line 06 but never tested or cleared in the program.

Sum of Digits – LBL “SD” –     Label 03 used unnecessarily in line 26. It can be deleted if program is run from ram.
Find all posts by this user
Quote this message in a reply
12-04-2016, 09:42 PM
Post: #178
RE: 4K HP 67 Games rom attached for testing
As to how much to "HP-41" these programs, that's a tougher question. Certainly when the original HP 67 program simply spits out a stream of numbers paused as outputs, alpha labels of those outputs makes a LOT of sense. :-) The alpha labels for AOS make sense as well, IMO.

The balance struck in the 67FUN rom is about right for most programs, I think. The alpha for the chess program is good, but the programs without alpha could be enhanced a bit, I agree.

As to the bug fixes, yeah, we will need a 1.01 version sometime.

I'm hoping to convert some HP 67 extended precision programs (which should be fairly straight conversions) next. A 20 digit square root, 20 digit sine and cosine, 105 digit sine, etc.

Why? Because they don't exist in HP 41 rom form. Good reason to me. :-)
Find all posts by this user
Quote this message in a reply
12-04-2016, 09:45 PM (This post was last modified: 12-04-2016 09:56 PM by Dieter.)
Post: #179
RE: 4K HP 67 Games rom attached for testing
(12-04-2016 08:55 PM)Gene Wrote:  Here are what I am referring to as "bugs" in the rom. This will be on page 1 of the manual.
...
Game of 1130 – LBL “1130” – USER mode not set by program and should be. Press USER after starting this program. If program from ram, add a line between steps 02 and 03 for this instruction: SF 27.

I have already done a completely reworked version of 1130. Take a look at the attachment. The "pot" here is initialized to zero. Which of course can be changed if you prefer. The new version is even shorter than what's in the ROM, and it requires only R00..03. How do you like it?

(12-04-2016 08:55 PM)Gene Wrote:  One Arm Bandit – LBL “OAB” –
1) This is the most serious bug in the rom. Each game is supposed to cost $0.25 but the program charges the user $0.25 for each level pull (LBL E) rather than each game.
2) While not a bug per se, you can save 7 bytes total by using a 10 in the program where RCL 04 occurs and deleting program lines 06-07: 10 STO 04.

OK, all this can be accomplished easily. That is: once it is defined when exactly a new game starts (I'm not familiar with this kind of devices). We can also save R05 in the ART program – unless the shot counter is recalled somewhere, e.g. at the end after the KILLED message. Or we add a max. number of shots. ;-)

(12-04-2016 08:55 PM)Gene Wrote:  Tic-Tac-Toe – LBL “TTT” – Flag 05 is set in line 06 but never tested or cleared in the program.

?!? – Flag 05 is the "first move" flag which is tested a few steps after LBL B:

32 FS?C 05
33 GTO 12

The program will not work without this as this step sets the basic strategy. ;-)

(12-04-2016 08:55 PM)Gene Wrote:  Sum of Digits – LBL “SD” – Label 03 used unnecessarily in line 26. It can be deleted if program is run from ram.

Hmmm... I also got a complete rewrite of the SD program. IIRC this was even posted somewhere here in the forum.

Dieter


Attached File(s)
.zip  G1130_2.zip (Size: 668 bytes / Downloads: 3)
Find all posts by this user
Quote this message in a reply
12-04-2016, 09:51 PM
Post: #180
RE: 4K HP 67 Games rom attached for testing
Oops on the TTT bug report. Fixed and removed from manual draft.

As to OAB, a game is two pulls of the lever, two pulls of LBL E. First pull gives you the first three numbers, and you must pull again even if you don't want to chance the numbers to get a payout.

Will look over the new version of 1130.
Find all posts by this user
Quote this message in a reply
Post Reply 




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