4K HP 67 Games rom attached for testing
11-22-2016, 06:57 AM
Post: #161
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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)
11-23-2016, 11:07 AM
Post: #162
 Ángel Martin Senior Member Posts: 1,316 Joined: Dec 2013
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...
11-23-2016, 01:58 PM (This post was last modified: 11-23-2016 02:59 PM by Gene.)
Post: #163
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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?

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
11-23-2016, 06:02 PM
Post: #164
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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
11-23-2016, 06:20 PM (This post was last modified: 11-24-2016 06:28 AM by Ángel Martin.)
Post: #165
 Ángel Martin Senior Member Posts: 1,316 Joined: Dec 2013
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!
11-23-2016, 08:13 PM
Post: #166
 Gene Moderator Posts: 1,250 Joined: Dec 2013
RE: 4K HP 67 Games rom attached for testing
Agreed.

Angel I have emailed you the changes to make please.

Thank you.
11-23-2016, 08:14 PM
Post: #167
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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.
11-24-2016, 01:08 AM (This post was last modified: 11-24-2016 01:19 AM by Gene.)
Post: #168
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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.
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.
11-24-2016, 07:05 AM (This post was last modified: 11-24-2016 07:08 AM by Dieter.)
Post: #169
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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
11-24-2016, 03:06 PM
Post: #170
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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.

11-24-2016, 03:07 PM
Post: #171
 rprosperi Super Moderator Posts: 5,248 Joined: Dec 2013
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
11-24-2016, 07:29 PM
Post: #172
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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.

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
11-24-2016, 07:33 PM
Post: #173
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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

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
11-24-2016, 07:53 PM
Post: #174
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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.
11-24-2016, 08:30 PM (This post was last modified: 11-24-2016 08:33 PM by Dieter.)
Post: #175
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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
12-04-2016, 08:40 PM
Post: #176
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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
12-04-2016, 08:55 PM
Post: #177
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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.
12-04-2016, 09:42 PM
Post: #178
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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. :-)
12-04-2016, 09:45 PM (This post was last modified: 12-04-2016 09:56 PM by Dieter.)
Post: #179
 Dieter Senior Member Posts: 2,397 Joined: Dec 2013
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)
12-04-2016, 09:51 PM
Post: #180
 Gene Moderator Posts: 1,250 Joined: Dec 2013
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.
 « Next Oldest | Next Newest »

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