I have the following suggestion assuming that your recipe are stored in memory some where. I like to reference structures so that you can give the variables of the recipes descriptive names. I also believe it's faster than for loops by passing pointers. I included the project so you can play with it. But here is the jist of the code.
Create a structure
TYPE RECIPE :
Create some variables in your program:
bNewRecipe : BOOL; (* When triggered causes a memory read *)
dwSelection :DWORD; (* Selection of which recipe, visualization limits it from 0 to 3 *)
dwOffset :DWORD := 16#A; (* Offset since there are 5 words = 10 bytes = 16#A to move between each recipe*)
tCurrentRecipe :RECIPE; (* Currently stored recipe *)
tRecipeMemory :POINTER TO RECIPE := 16#82DCA0; (* Base address of first recipe in memory *)
tTempRecipe :POINTER TO RECIPE; (* Used as a temporary variable *)
Now change the contents of the structure each time the button is pressed and the index changes. Hope you get the idea.
IF bNewRecipe THEN
(* Move the address to the temp recipe *)
tTempRecipe := tRecipeMemory + (dwSelection * dwOffset);
(* Store the contents of the memory into the current recipe *)
tCurrentRecipe := tTempRecipe^;
(* Now you can reference variable like this in your code*)
That's it on an operator display as the user presses an arrow or something to scroll through the recipes he changes the index and selects accept. That was easy!!