When the HP-65 runs program steps it gets a program code (0-63) from program memory and then does something depending on the program code.
Here is the table of what it does:
01000 goto 01242 ; 000 NOP (start prog code jump table) 01001 goto 01360 ; 001 STO 4 01002 rom 5 ; 002 3 01003 rom 5 ; 003 2 01004 rom 5 ; 004 1 01005 goto 01360 ; 005 STO 6 01006 goto 01310 ; 006 * 01007 rom 5 ; 007 x!=y 01010 goto 01347 ; 010 g 01011 goto 01342 ; 011 R^ 01012 goto 01347 ; 012 RCL 01013 goto 01347 ; 013 STO 01014 goto 01347 ; 014 f-1 01015 goto 01215 ; 015 Rv 01016 goto 01347 ; 016 f 01017 goto 01360 ; 017 RCL 8 01020 goto 01360 ; 020 RCL 7 01021 goto 01322 ; 021 x<->y 01022 rom 5 ; 022 6 01023 rom 5 ; 023 5 01024 rom 5 ; 024 4 01025 goto 01360 ; 025 RCL 6 01026 goto 01311 ; 026 + 01027 goto 01360 ; 027 RCL 4 01030 goto 01351 ; 030 E 01031 rom 5 ; 031 x==y 01032 goto 01351 ; 032 D 01033 goto 01351 ; 033 C 01034 goto 01351 ; 034 B 01035 goto 01360 ; 035 RCL 5 01036 goto 01351 ; 036 A 01037 goto 01360 ; 037 RCL 3 01040 goto 01360 ; 040 RCL 2 01041 goto 01360 ; 041 RCL 1 01042 goto 01101 ; 042 R/S 01043 goto 01271 ; 043 . 01044 rom 5 ; 044 0 01045 goto 01360 ; 045 STO 7 01046 goto 01307 ; 046 / 01047 rom 1 ; 047 (rsvd) 01050 goto 01347 ; 050 (rsvd) 01051 rom 5 ; 051 x>y 01052 goto 01347 ; 052 RTN 01053 goto 01347 ; 053 LBL 01054 goto 01347 ; 054 GTO 01055 goto 01360 ; 055 STO 5 01056 goto 01347 ; 056 DSP 01057 goto 01360 ; 057 STO 3 01060 goto 01360 ; 060 STO 2 01061 goto 01360 ; 061 STO 1 01062 rom 5 ; 062 9 01063 rom 5 ; 063 8 01064 rom 5 ; 064 7 01065 goto 01360 ; 065 STO 8 01066 goto 01312 ; 066 - 01067 rom 5 ; 067 x<=y 01070 goto 01234 ; 070 CLx 01071 no operation ; 071 (ptr2) 01072 goto 01277 ; 072 EEX 01073 goto 01375 ; 073 CHS 01074 rom 0 ; 074 LSTx 01075 no operation ; 075 (ptr1) 01076 goto 01047 ; 076 ENTER 01077 c <-> m ; 077 (begin)
How does it get to this table? See HP-65 Key Press Routine.