The Museum of HP Calculators

# Hack and Slash Adventure for the HP-35s

This program is by Paul Dale and is used here by permission.

This program is supplied without representation or warranty of any kind. Paul Dale and The Museum of HP Calculators therefore assume no responsibility and shall have no liability, consequential or otherwise, of any kind arising from the use of this program material or any part thereof.

## Overview

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.

To start, XEQ D ENTER is all that is required.

LN=3331
CK=EB55

The size is really closer to 8kb

## Listing

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