Games on 35s, 48gx or 15c



#2

Okay, I promise this last question topic. My nephew come to stay night tonight and he very inquisitive boy. Are there any fun game I can program on one of three calculators listed above for him. I think I remember seeing someplace games for 15c, but I do not have any. I would love to let him use new 35s, but I doubt game have been figured out yet for that.


#3

If you visit hpcalc.org you'll find a lot of software for the HP48GX, including a whole section on games.


#4

It look like I have to load somehow. Do they not have simple game I can enter on keyboard? Or is it true that there some way to take serial mouse cable and hook up to 48gx to transfer program?


#5

Your nephew will certainly not be impressed with HP calculators if you show him a game you can type in 5 minutes. If you dont already have a a serial cable (e.g. from Samson cables), I'd recommend impressing him with your HP math skills and not HP programming skills.

#6

See this link for some great 48gx games (hpcalc).. Kids these days won't tolerate the MOONLANDER 'games' from years past. Get the arcade games. I Especially recommend ICECUBE. I have not beaten it in 10 years.

#7

No one liked this. Most likely your nephew won't either. Anyway, here it is:

http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/archv014.cgi?read=68346


Edited: 10 Aug 2007, 10:06 p.m.


#8

You all right. My nephew tell me this boring! :) oh well, I think it is fun. I try and write space lander maybe tomorrow on 35s.

#9

Here is one game for the 35s which I submitted to the software library last week (but which isn't up yet). Apologies in advance for the length. The program is formatted to fit an 80 column printout.

I wrote this for my children to play which they will do next time the "I'm bored" comes out...

No checksums since they are wrong. No LN either since it is bogus too. The actual size is just under 8kb.


- Pauli


A dragon has kidnapped the beautiful princess and you are tasked with her rescue. You will have to brave all manner of nasty beasts on your quest.

The quest is a series of meet monster, kill or run away from monster
cycles. When you kill a monster you will usually gain some treasure and possibly a magic item. You might also get healed. The difficulty of the monsters generally increases with your abilities. Once you defeat the dragon, you win the game. If you've accumulated sufficient treasure, you'll marry the princess as well.

When displaying numbers they are viewed via registers:

	E = experience (your total and current earnings)
H = hit points (both damage and your total)
G = gold
L = level
S = spells
Periodically you'll be asked one of two questions:
	"attack or flee"	(0=ATK 1=FLEE)
"sword or spell" (0=SWD 1=SPELL)
In each case enter a zero number and press R/S for the first and enter a non-zero number and press R/S for the second. By default a zero will be entered for you so you only actually need to press R/S in that case.


D001  LBL D                D238  GTO D381             D475  XEQ D065          
D002 ALL D239 XEQ D075 D476 XEQ D029
D003 XEQ D702 D240 x<y? D477 RCL M
D004 SF 10 D241 GTO D393 D478 XEQ D067
D005 XEQ D639 D242 x>y? D479 /
D006 STO M D243 GTO D345 D480 +
D007 XEQ D639 D244 eqn TITAN D481 2.5
D008 STO N D245 PSE D482 -
D009 XEQ D639 D246 [16,10,50] D483 IP
D010 STO O D247 [2,16,20] D484 FS? 1
D011* XEQ D063 D248 [1,22,25] D485 XEQ D509
D012 RCL H D249 GTO D399 D486 x<=0?
D013 x>=y? D250* XEQ D078 D487 XEQ D071
D014 GTO D110 D251 x<y? D488 GTO D533
D015 XEQ D057 D252 GTO D333 D489* eqn MISSED
D016 x<=y? D253 x>y? D490 PSE
D017 GTO D081 D254 GTO D387 D491 GTO D535
D018 RCL K D255 eqn ENT D492* XEQ D069
D019 XEQ D057 D256 PSE D493 /
D020 XEQ D069 D257 [9,10,40] D494 XEQ D073
D021 RCL H D258 [2,6,10] D495 +
D022 y^x D259 [2,15,25] D496 IP
D023 * D260 GTO D399 D497 x<=0?
D024 XEQ D063 D261* eqn GIANT BAT D498 GTO D071
D025 - D262 PSE D499 RTN
D026 x>=y? D263 [1,2,0] D500* 0.9
D027 GTO D110 D264 [1,4,0] D501 *
D028 GTO D088 D265 [1,0,12] D502 RTN
D029* RANDOM D266 GTO D399 D503* XEQ D067
D030 * D267* eqn GOBLIN D504 -
D031 INTG D268 PSE D505 RTN
D032 XEQ D071 D269 [1,8,0] D506* XEQ D067
D033 + D270 [1,8,0] D507 +
D034 RTN D271 [1,2,15] D508 RTN
D035* STO A D272 GTO D399 D509* XEQ D057
D036 CF 10 D273* eqn SKELETON D510 XEQ D029
D037* eqn REGY*RAND D274 PSE D511 +
D038 INTG D275 [1,8,2] D512 XEQ D065
D039 + D276 [1,8,0] D513 +
D040 DSE A D277 [2,1,18] D514 FS? 4
D041 GTO D037 D278 GTO D399 D515 GTO D517
D042 SF 10 D279* eqn GIANT RAT D516 RTN
D043 X<>Y D280 PSE D517* XEQ D063
D044 Rv D281 [1,6,0] D518 XEQ D069
D045 RTN D282 [1,6,0] D519 XEQ D029
D046* XEQ D633 D283 [1,1,13] D520 +
D047 XEQ D035 D284 GTO D399 D521 XEQ D057
D048 + D285* eqn DWARF D522 +
D049 RTN D286 PSE D523 RTN
D050* XEQ D069 D287 [2,8,0] D524* XEQ D071
D051 XEQ D029 D288 [1,10,1] D525 STO- L
D052 XEQ D071 D289 [1,2,20] D526 eqn ZOT!
D053 - D290 GTO D399 D527 PSE
D054 RTN D291* eqn GIANT SPIDER D528 XEQ D067
D055* XEQ D063 D292 PSE D529 XEQ D069
D056 GTO D029 D293 [2,8,4] D530 +
D057* 10 D294 [1,10,8] D531 RCL H
D058 RTN D295 [1,4,17] D532 XEQ D035
D059* 3 D296 GTO D399 D533* STO- D
D060 RTN D297* eqn ZOMBIE D534 XEQ D613
D061* 100 D298 PSE D535* RCL D
D062 RTN D299 [3,8,0] D536 x<=0?
D063* 20 D300 [1,6,2] D537 GTO D568
D064 RTN D301 [2,5,8] D538 RCL B
D065* 8 D302 GTO D399 D539 FS? 3
D066 RTN D303* eqn GHOST D540 XEQ D492
D067* 4 D304 PSE D541 STO Q
D068 RTN D305 [10,8,50] D542* XEQ D055
D069* 2 D306 [2,4,-1] D543 RCL+ F
D070 RTN D307 [2,16,30] D544 RCL N
D071* 1 D308 GTO D399 D545 XEQ D067
D072 RTN D309* eqn DAEMON D546 /
D073* 0.5 D310 PSE D547 -
D074 RTN D311 [8,8,20] D548 XEQ D057
D075* XEQ D069 D312 [1,8,2] D549 -
D076 + D313 [2,11,26] D550 FS? 2
D077 RTN D314 GTO D399 D551 XEQ D503
D078* XEQ D069 D315* eqn GNOME D552 x<0?
D079 - D316 PSE D553 GTO D565
D080 RTN D317 [3,10,0] D554 RCL C
D081* RCL K D318 [1,8,1] D555 XEQ D046
D082 -9 D319 [1,7,18] D556 FS? 0
D083 RCL+ H D320 GTO D399 D557 XEQ D500
D084 10220 D321* eqn BASILISK D558 INTG
D085 * D322 PSE D559 x<=0?
D086 x>=y? D323 [6,8,4] D560 XEQ D071
D087 GTO D110 D324 [2,10,10] D561 STO- J
D088* XEQ D067 D325 [1,13,24] D562 eqn OUCH!
D089 XEQ D029 D326 GTO D399 D563 PSE
D090 XEQ D065 D327* eqn SLIME D564 XEQ D613
D091 + D328 PSE D565* DSE Q
D092 RCL O D329 [5,10,20] D566 GTO D542
D093 XEQ D059 D330 [1,4,0] D567 GTO D425
D094 / D331 [4,8,12] D568* eqn KILLED!
D095 + D332 GTO D399 D569 PSE
D096 IP D333* eqn DEVIL D570 XEQ D067
D097 x<=0 D334 PSE D571 XEQ D069
D098 XEQ D071 D335 [10,8,30] D572 RCL E
D099 STO+ I D336 [1,10,5] D573 y^x
D100 STO+ J D337 [2,14,24] D574 RCL* P
D101 XEQ D071 D338 GTO D399 D575 RCL* B
D102 STO+ H D339* eqn BARBARIAN D576 STO+ K
D103 STO+ L D340 PSE D577 XEQ D608
D104 XEQ D050 D341 [4,12,16] D578 XEQ D059
D105 STO+ M D342 [1,10,2] D579 RCL E
D106 XEQ D050 D343 [1,7,13] D580 y^x
D107 STO+ N D344 GTO D399 D581 XEQ D029
D108 XEQ D050 D345* eqn VAMPIRE D582 STO+ R
D109 STO+ O D346 PSE D583 XEQ D057
D110* RCL H D347 [8,10,10] D584 /
D111 XEQ D623 D348 [2,12,8] D585 IP
D112 RCL K D349 [1,15,24] D586 STO+ K
D113 XEQ D608 D350 GTO D399 D587 XEQ D618
D114 RCL J D351* eqn OOZE D588 RANDOM
D115 XEQ D613 D352 PSE D589 0.1
D116 RCL L D353 [12,10,30] D590 RCL* E
D117 XEQ D628 D354 [1,6,0] D591 x>y?
D118 FS? 4 D355 [5,9,14] D592 XEQ D645
D119 GTO D693 D356 GTO D399 D593* XEQ D057
D120 XEQ D065 D357* eqn MOLD MONSTER D594 1/x
D121 XEQ D067 D358 PSE D595 RANDOM
D122 * D359 [2,8,0] D596 x>=y?
D123 XEQ D059 D360 [1,2,0] D597 GTO D011
D124 XEQ D071 D361 [3,3,10] D598 eqn HEAL
D125 RCL+ H D362 GTO D399 D599 PSE
D126 * D363* eqn OGRE D600 RCL I
D127 x>y? D364 PSE D601 STO J
D128 x<>y D365 [5,12,10] D602 RANDOM
D129 XEQ D029 D366 [2,8,8] D603 0.3
D130 STO E D367 [1,10,21] D604 +
D131 XEQ D067 D368 GTO D399 D605 IP
D132 x^2 D369* eqn GIANT SNAKE D606 STO+ L
D133 x<y? D370 PSE D607 GTO D011
D134 GTO D199 D371 [4,8,8] D608* x<> E
D135 x=y? D372 [2,8,4] D609 VIEW E
D136 GTO D369 D373 [1,5,15] D610 PSE
D137 XEQ D065 D374 GTO D399 D611 x<> E
D138 - D375* eqn TROLL D612 RTN
D139 x<y? D376 PSE D613* x<> H
D140 GTO D171 D377 [6,10,40] D614 VIEW H
D141 x=y? D378 [1,6,6] D615 PSE
D142 GTO D357 D379 [2,9,22] D616 x<> H
D143 XEQ D067 D380 GTO D399 D617 RTN
D144 - D381* eqn ELEMENTAL D618* x<> G
D145 x<y? D382 PSE D619 VIEW G
D146 GTO D160 D383 [10,12,30] D620 PSE
D147 x=y? D384 [1,12,10] D621 x<> G
D148 GTO D267 D385 [2,16,17] D622 RTN
D149 XEQ D078 D386 GTO D399 D623* x<> L
D150 x<y? D387* eqn WYVERN D624 VIEW L
D151 GTO D279 D388 PSE D625 PSE
D152 x>y? D389 [7,12,16] D626 x<> L
D153 GTO D261 D390 [1,8,8] D627 RTN
D154 eqn KOBOLD D391 [2,14,28] D628* x<> S
D155 PSE D392 GTO D399 D629 VIEW S
D156 [1,4,1] D393* eqn DRAGON D630 PSE
D157 [1,6,-1] D394 PSE D631 x<> S
D158 [1,0,13] D395 [24,20,100] D632 RTN
D159 GTO D399 D396 [1,20,30] D633* CF 10
D160* XEQ D075 D397 [2,30,29] D634 eqn [0,0,1]*REGX
D161 x<y? D398 SF 4 D635 eqn [0,1,0]*REGY
D162 GTO D285 D399* STO B D636 eqn [1,0,0]*REGZ
D163 x>y? D400 Rv D637 SF 10
D164 GTO D273 D401 STO C D638 RTN
D165 eqn ORC D402 Rv D639* XEQ D063
D166 PSE D403 XEQ D046 D640 RANDOM
D167 [1,12,4] D404 STO D D641 SQRT
D168 [1,8,3] D405 STO P D642 *
D169 [1,3,17] D406 RCL E D643 IP
D170 GTO D399 D407 XEQ D059 D644 RTN
D171* XEQ D067 D408 / D645* XEQ D069
D172 + D409 +/- D646 XEQ D067
D173 x>y? D410 INTG D647 XEQ D029
D174 GTO D188 D411 ABS D648 XEQ D071
D175 x=y? D412 STO E D649 -
D176 GTO D315 D413 RCL B D650 x=0?
D177 XEQ D075 D414 XEQ D633 D651 GTO D666
D178 x<y? D415 STO B D652 x<y?
D179 GTO D339 D416 Rv D653 GTO D673
D180 x>y? D417 STO F D654 x=y?
D181 GTO D327 D418 Rv D655 GTO D680
D182 eqn GNOLL D419 STO G D656 FS? 3
D183 PSE D420 GTO D428 D657 RTN
D184 [4,10,4] D421* CF 4 D658 SF 3
D185 [1,10,1] D422* eqn GOT AWAY D659 eqn MAGIC HELMET
D186 [1,6,17] D423 PSE D660 PSE
D187 GTO D399 D424 GTO D593 D661 XEQ D071
D188* XEQ D078 D425* RCL J D662* 1e3
D189 x<y? D426 x<=0? D663 *
D190 GTO D297 D427 GTO D690 D664 STO+ R
D191 x>y? D428* eqn 0=ATK 1=FLEE D665 RTN
D192 GTO D291 D429 PSE D666* FS? 0
D193 eqn GIANT LEECH D430 CLSTK D667 RTN
D194 PSE D431 STOP D668 SF 0
D195 [2,8,4] D432 x=0? D669 eqn MAGIC SHIELD
D196 [1,8,4] D433 GTO D449 D670 PSE
D197 [1,6,11] D434 FS? 4 D671 XEQ D069
D198 GTO D399 D435 GTO D421 D672 GTO D662
D199* XEQ D065 D436 XEQ D057 D673* FS? 1
D200 + D437 RCL* E D674 RTN
D201 x<y? D438 XEQ D069 D675 SF 1
D202 GTO D233 D439 RCL* N D676 eqn MAGIC SWORD
D203 x=y? D440 - D677 PSE
D204 GTO D321 D441 RCL+ H D678 XEQ D057
D205 XEQ D067 D442 XEQ D061 D679 GTO D662
D206 - D443 / D680* FS? 2
D207 x<y? D444 RANDOM D681 RTN
D208 GTO D222 D445 x>=y? D682 SF 2
D209 x=y? D446 GTO D422 D683 eqn MAGIC ARMOUR
D210 GTO D375 D447 eqn CAUGHT YOU! D684 PSE
D211 XEQ D078 D448 PSE D685 XEQ D067
D212 x<y? D449* RCL L D686 GTO D662
D213 GTO D363 D450 x=0? D687* eqn MARRY PRINCESS
D214 x>y? D451 GTO D458 D688 PSE
D215 GTO D351 D452 eqn 0=SWD 1=SPELL D689 RTN
D216 eqn BUGBEAR D453 PSE D690* eqn YOU DIED!
D217 PSE D454 CLSTK D691 PSE
D218 [6,8,15] D455 STOP D692 GTO D702
D219 [1,6,4] D456 x<>0? D693* eqn BEAT DRAGON
D220 [4,9,20] D457 GTO D524 D694 PSE
D221 GTO D399 D458* XEQ D055 D695 XEQ D061
D222* XEQ D075 D459 RCL H D696 x^2
D223 x<y? D460 XEQ D069 D697 RCL R
D224 GTO D309 D461 / D698 x>=y?
D225 x>y? D462 + D699 XEQ D687
D226 GTO D303 D463 RCL M D700 eqn YOU WIN!
D227 eqn GIANT D464 XEQ D067 D701 PSE
D228 PSE D465 / D702* CLVARS
D229 [6,12,30] D466 + D703 CLSTK
D230 [2,10,12] D467 IP D704 CF 0
D231 [1,12,23] D468 FS? 1 D705 CF 1
D232 GTO D399 D469 XEQ D506 D706 CF 2
D233* XEQ D067 D470 RCL G D707 CF 3
D234 + D471 x>y? D708 CF 4
D235 x>y? D472 GTO D489 D709 CF 10
D236 GTO D250 D473 eqn HIT D710 RTN
D237 x=y? D474 PSE

#10

WOW! A 700 step program on a calculator that you couldn't have had for more than a month. I'm really impressed with your programming effort, efficiency in entering most of the constants as vectors and your use of just one alpha label.

Did you code this directly on the calculator, on a spreadsheet or on paper first? Or perhaps, you are one of the lucky ones that has the emulator that HP won't release?

(I'm also very reluctant to enter such a long program into my machine since I don't yet trust that it will not need a reboot to reset some bug I step on -- like the vector input problem.)

-Katie


#11

Quote:
WOW! A 700 step program on a calculator that you couldn't have had for more than a month. I'm really impressed with your programming effort, efficiency in entering most of the constants as vectors and your use of just one alpha label.

Thanks, I've had my 35s for just over two weeks now.

Vectors seem to use the same amount of memory as a single numeric constant so they seemed like a natural way to go. Plus there aren't a lot of stack levels so I saved a lot of STOs this way. I also coded subroutines for the common constants since a call takes three bytes as opposed to 38 for an inline constant and the calculator is definitely fast enough to not care most of the time. I did trial building the constants up e.g. 2 is built from 1+1, 4 from 2^2 etc. This slowed things too much even though it saved a decent amount of memory.

The alpha labels are pretty much irrelevant except as entry points for humans to remember, we can address (almost) any line in calculator memory via a GTO or XEQ statement so a program doesn't care. See if you can guess which steps are not directly addressable.


Quote:
Did you code this directly on the calculator, on a spreadsheet or on paper first?

Some on the calculator at first but that proved too painful so I wrote an assembler that let me ignore the line numbering difficulties and wrote it as a text file on my laptop. Couldn't run it there of course and it took a few iterations between laptop and calculator to get right.

If anybody wants the assembler source code or the game's slightly commented source, I'm happy to email either directly. Both are larger than I'd like to post to the forum. The assembler is written in C, has little error checking but is adequate for what I wanted.


Quote:
Or perhaps, you are one of the lucky ones that has the emulator that HP won't release?

I wish :-)


- Pauli


As for the unreachable steps question I posed earlier, if you have an unlabelled program at the start of program memory you cannot branch to any step there in. Or at least, I'm not aware of how to do so.

#12

"If you've accumulated sufficient treasure, you'll marry the princess as well"

This sounds about right! <grin>

...

I would love to see your assembler code and your 35s commented code. I do not have an
hp 35s yet, but I am studying CS and would like to study your efforts.

Please send to green chile 505 at yahoo dot com

Thank you,
Pal G.

Edited: 16 Aug 2007, 10:26 a.m.


Possibly Related Threads...
Thread Author Replies Views Last Post
  Programs for 15C and 35S Eddie W. Shore 25 755 05-23-2013, 03:58 PM
Last Post: Eddie W. Shore
  Original 15C Keyboard Test Works With 15C LE!!! DigiGal 5 304 09-26-2011, 07:33 PM
Last Post: M. Joury
  Most sophisticated 15c games? Dave Britten 16 496 09-19-2011, 11:44 AM
Last Post: megarat
  Is there anything the 15c can't do compared to the 35s? snaggs 156 3,673 09-02-2011, 05:36 PM
Last Post: Egan Ford
  HP-71B Dice Games Howard Owen 6 220 04-28-2011, 04:33 PM
Last Post: Howard Owen
  New revs of 41 Games Library Ángel Martin 1 115 10-01-2010, 03:10 PM
Last Post: gene wright
  HP-41 Games Library near completion Ángel Martin 3 178 07-04-2010, 11:44 AM
Last Post: Diego Diaz
  OT: Casio Games Site gileno 0 59 12-26-2007, 07:18 PM
Last Post: gileno
  Adv+CCD+Games in 41CY or Rambox PeterP 6 247 12-03-2007, 10:32 AM
Last Post: PeterP
  HP-85 emulator and Games Pac 2 Everett Kaser 15 414 06-10-2006, 03:51 PM
Last Post: Everett Kaser

Forum Jump: