HP-67 g MERGE

The g MERGE function allows you to load a part of a program or a data card; instead of all of it. There’s not much in the microcode for the function but here it is:

; 0x45 is the hexcode for the g MERGE program step
06047 shift left a[x]    ; A= 00000000000450
06050 delayed rom 016
06051 a -> rom address   ; 0x45 =01 000 101 =0105

do_45_g_merge:
07105 if n/c go to 07055
07055 CRC 1200           ; set merge flag
07056 delayed rom 00
07057 if n/c go to 0125
00125 binary
00126 0 -> s 3
00127 delayed rom 02
00130 jsb 01205          ; 0->s4,6,7,8,10,13
00131 CRC 1500           ; test/clear pause flag
00132 if 1 = s 3
00133 then go to 0257
00134 jsb 0116           ; if run or SST then ...
00135 ...

All it does is set a flag in the card reader circuit (then clear all prefixes and check for SST or run mode – just like every other function).

The smarts are in the card read microcode. You can see this in HP-67 Card Reader.

You can see more of the g MERGE microcode in:
67-g-merge.txt

It's only fair to share...Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInShare on StumbleUponDigg thisPin on PinterestEmail this to someone

Leave a Reply

Your email address will not be published. Required fields are marked *