I'm fairly certain now that addresses FF04 and FF05 are related to the bonus game item order. There can be only four different possible orders, and the two aforementioned addresses are like RNG (changing each frame).
Here is a list. The two values before the "=" denote FF04 and FF05, and the value after the "=" is the item order that happened.
12F3 = 1, <-- on the left side is the item order, in this case 1up 2up flower 3up.
2F31 = 2,
312F = 3,
F312 = 4.
1 243 = 3
2 244 = 3
5 247 = 4
9 123 = 3
13 127 = 3
14 0 = 3
14 128 = 1
16 130 = 4
20 6 = 3
20 134 = 4
21 135 = 3
22 136 = 2
26 12 = 1
27 141 = 4
28 13 = 4
29 15 = 1
29 143 = 1
31 145 = 2
32 146 = 3
34 148 = 1
36 150 = 4
42 156 = 2
44 30 = 3
44 158 = 4
49 35 = 1
51 37 = 4
55 169 = 4
56 170 = 4
60 46 = 4
60 174 = 3
63 49 = 2
63 177 = 2
64 178 = 4
66 180 = 1
67 181 = 4
68 54 = 4
69 183 = 3
71 57 = 2
72 58 = 4
74 60 = 1
74 188 = 1
75 189 = 4
76 62 = 4
77 191 = 3
79 193 = 2
80 194 = 3
82 196 = 1
84 70 = 4
87 201 = 2
89 203 = 3
91 77 = 2
96 82 = 4
98 84 = 1
102 216 = 1
104 90 = 4
106 220 = 1
107 93 = 2
107 221 = 2
109 95 = 1
109 223 = 3
110 224 = 1
112 226 = 3
114 100 = 1
114 228 = 1
115 229 = 1
117 103 = 1
119 105 = 2
120 106 = 3
120 234 = 2
122 108 = 1
122 236 = 3
124 238 = 2
125 239 = 4
127 241 = 1
128 242 = 2
130 116 = 2
135 249 = 1
137 123 = 1
138 252 = 3
142 128 = 2
144 130 = 4
146 132 = 1
148 6 = 3
150 136 = 2
152 10 = 3
153 139 = 3
155 13 = 3
156 14 = 3
156 142 = 4
157 143 = 3
159 17 = 2
160 18 = 3
160 146 = 3
164 150 = 4
165 151 = 3
167 153 = 2
168 154 = 3
172 30 = 4
176 34 = 4
177 35 = 3
177 163 = 3
179 37 = 4
181 39 = 3
184 42 = 4
184 170 = 4
185 43 = 1
189 175 = 3
190 48 = 2
191 176 = 2
192 50 = 3
192 178 = 3
196 54 = 4
197 183 = 3
199 57 = 2
200 186 = 4
202 188 = 1
203 61 = 4
203 189 = 4
205 63 = 1
207 65 = 2
207 193 = 2
210 196 = 2
212 198 = 4
213 199 = 1
215 201 = 2
218 76 = 2
219 77 = 2
223 81 = 4
223 209 = 4
226 84 = 1
229 87 = 3
230 88 = 2
230 216 = 1
231 89 = 2
232 90 = 4
235 221 = 4
237 95 = 3
237 223 = 3
239 97 = 2
239 225 = 2
240 98 = 4
242 100 = 1
243 229 = 1
245 103 = 1
248 234 = 2
250 108 = 1
250 236 = 3
252 110 = 4
253 111 = 3
253 239 = 4
I reduced this list to show combinations where either the left or the right value stayed the same. With this, maybe we can figure out the algorithm behind this.
14 0 = 3
14 128 = 1
20 6 = 3
20 134 = 4
29 15 = 1
29 143 = 1
44 30 = 3
44 158 = 4
60 46 = 4
60 174 = 3
63 49 = 2
63 177 = 2
107 93 = 2
107 221 = 2
109 95 = 1
109 223 = 3
114 100 = 1
114 228 = 1
120 106 = 3
120 234 = 2
122 108 = 1
122 236 = 3
156 14 = 3
156 142 = 4
160 18 = 3
160 146 = 3
177 35 = 3
177 163 = 3
184 42 = 4
184 170 = 4
192 50 = 3
192 178 = 3
203 61 = 4
203 189 = 4
207 65 = 2
207 193 = 2
223 81 = 4
223 209 = 4
230 88 = 2
230 216 = 1
237 95 = 3
237 223 = 3
239 97 = 2
239 225 = 2
250 108 = 1
250 236 = 3
253 111 = 3
253 239 = 4
9 123 = 3
137 123 = 1
14 128 = 1
142 128 = 2
16 130 = 4
144 130 = 4
20 6 = 3
148 6 = 3
22 136 = 2
150 136 = 2
28 13 = 4
155 13 = 3
29 143 = 1
157 143 = 3
160 146 = 3
32 146 = 3
36 150 = 4
164 150 = 4
44 30 = 3
172 30 = 4
49 35 = 1
177 35 = 3
51 37 = 4
179 37 = 4
56 170 = 4
184 170 = 4
64 178 = 4
192 178 = 3
68 54 = 4
196 54 = 4
69 183 = 3
197 183 = 3
71 57 = 2
199 57 = 2
74 188 = 1
202 188 = 1
75 189 = 4
203 189 = 4
79 193 = 2
207 193 = 2
82 196 = 1
210 196 = 2
87 201 = 2
215 201 = 2
102 216 = 1
230 216 = 1
107 221 = 2
235 221 = 4
109 223 = 3
237 223 = 3
115 229 = 1
243 229 = 1
120 234 = 2
248 234 = 2
122 236 = 3
250 236 = 3
125 239 = 4
253 239 = 4
But we haven't been successful so far. One other approach was to go through ROM and see what the game actually does. I tried searching "04 FF" and "05 FF" because I assumed those addresses might be spelled out in ROM, and they do appear once respectively. Value of FF04 is saved to register A, but 05 FF is being read as code instead of an address. Neither of these are being executed during the frame where the bonus game order is supposed to be determined though.
Maybe if someone who understands disassembly language better helps, we could figure out the algorithm.
Thanks to rectangulartim