Skip to content

Commit c669c34

Browse files
dl471mrexodia
authored andcommitted
Add arrow key movements for first set of FPU registers
1 parent 115b90d commit c669c34

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

src/gui/Src/Gui/RegistersView.cpp

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,45 +209,74 @@ void RegistersView::InitMappings()
209209
{
210210
mRegisterMapping.insert(x87r0, "x87r0");
211211
mRegisterPlaces.insert(x87r0, Register_Position(offset++, 0, 6, 10 * 2));
212+
mRegisterRelativePlaces.insert(x87r0, Register_Relative_Position(SS, x87r1));
212213
mRegisterMapping.insert(x87r1, "x87r1");
213214
mRegisterPlaces.insert(x87r1, Register_Position(offset++, 0, 6, 10 * 2));
215+
mRegisterRelativePlaces.insert(x87r1, Register_Relative_Position(x87r0, x87r2));
214216
mRegisterMapping.insert(x87r2, "x87r2");
215217
mRegisterPlaces.insert(x87r2, Register_Position(offset++, 0, 6, 10 * 2));
218+
mRegisterRelativePlaces.insert(x87r2, Register_Relative_Position(x87r1, x87r3));
216219
mRegisterMapping.insert(x87r3, "x87r3");
217220
mRegisterPlaces.insert(x87r3, Register_Position(offset++, 0, 6, 10 * 2));
221+
mRegisterRelativePlaces.insert(x87r3, Register_Relative_Position(x87r2, x87r4));
218222
mRegisterMapping.insert(x87r4, "x87r4");
219223
mRegisterPlaces.insert(x87r4, Register_Position(offset++, 0, 6, 10 * 2));
224+
mRegisterRelativePlaces.insert(x87r4, Register_Relative_Position(x87r3, x87r5));
220225
mRegisterMapping.insert(x87r5, "x87r5");
221226
mRegisterPlaces.insert(x87r5, Register_Position(offset++, 0, 6, 10 * 2));
227+
mRegisterRelativePlaces.insert(x87r5, Register_Relative_Position(x87r4, x87r6));
222228
mRegisterMapping.insert(x87r6, "x87r6");
223229
mRegisterPlaces.insert(x87r6, Register_Position(offset++, 0, 6, 10 * 2));
230+
mRegisterRelativePlaces.insert(x87r6, Register_Relative_Position(x87r5, x87r7));
224231
mRegisterMapping.insert(x87r7, "x87r7");
225232
mRegisterPlaces.insert(x87r7, Register_Position(offset++, 0, 6, 10 * 2));
233+
mRegisterRelativePlaces.insert(x87r7, Register_Relative_Position(x87r6, x87TagWord));
234+
226235
}
227236
else
228237
{
229238
mRegisterMapping.insert(x87st0, "ST(0)");
230239
mRegisterPlaces.insert(x87st0, Register_Position(offset++, 0, 6, 10 * 2));
240+
mRegisterRelativePlaces.insert(x87st0, Register_Relative_Position(SS, x87st1));
231241
mRegisterMapping.insert(x87st1, "ST(1)");
232242
mRegisterPlaces.insert(x87st1, Register_Position(offset++, 0, 6, 10 * 2));
243+
mRegisterRelativePlaces.insert(x87st1, Register_Relative_Position(x87st0, x87st2));
233244
mRegisterMapping.insert(x87st2, "ST(2)");
234245
mRegisterPlaces.insert(x87st2, Register_Position(offset++, 0, 6, 10 * 2));
246+
mRegisterRelativePlaces.insert(x87st2, Register_Relative_Position(x87st1, x87st3));
235247
mRegisterMapping.insert(x87st3, "ST(3)");
236248
mRegisterPlaces.insert(x87st3, Register_Position(offset++, 0, 6, 10 * 2));
249+
mRegisterRelativePlaces.insert(x87st3, Register_Relative_Position(x87st2, x87st4));
237250
mRegisterMapping.insert(x87st4, "ST(4)");
238251
mRegisterPlaces.insert(x87st4, Register_Position(offset++, 0, 6, 10 * 2));
252+
mRegisterRelativePlaces.insert(x87st4, Register_Relative_Position(x87st3, x87st5));
239253
mRegisterMapping.insert(x87st5, "ST(5)");
240254
mRegisterPlaces.insert(x87st5, Register_Position(offset++, 0, 6, 10 * 2));
255+
mRegisterRelativePlaces.insert(x87st5, Register_Relative_Position(x87st4, x87st6));
241256
mRegisterMapping.insert(x87st6, "ST(6)");
242257
mRegisterPlaces.insert(x87st6, Register_Position(offset++, 0, 6, 10 * 2));
258+
mRegisterRelativePlaces.insert(x87st6, Register_Relative_Position(x87st5, x87st7));
243259
mRegisterMapping.insert(x87st7, "ST(7)");
244260
mRegisterPlaces.insert(x87st7, Register_Position(offset++, 0, 6, 10 * 2));
261+
mRegisterRelativePlaces.insert(x87st7, Register_Relative_Position(x87st6, x87TagWord));
262+
245263
}
246264

247265
offset++;
248266

249267
mRegisterMapping.insert(x87TagWord, "x87TagWord");
250268
mRegisterPlaces.insert(x87TagWord, Register_Position(offset++, 0, 11, sizeof(WORD) * 2));
269+
270+
if(mFpuMode)
271+
{
272+
mRegisterRelativePlaces.insert(x87TagWord, Register_Relative_Position(x87r7, x87TW_0));
273+
}
274+
else
275+
{
276+
mRegisterRelativePlaces.insert(x87TagWord, Register_Relative_Position(x87st7, x87TW_0));
277+
}
278+
279+
251280
//Special treatment of long internationalized string
252281
int NextColumnPosition = 20;
253282
int temp;

0 commit comments

Comments
 (0)