Code: Select all
0210c: 09,0f,00 shlw R0,f R0 <<= f;
0210f: 09,03,00 shlw R0,3 R0 <<= 3;
02112: 3a,0a,06 jb B2,Ra,0211b if (HSI_Ready = 0) {
02115: f3 popp PSW = pop();
02116: f1 reti return;
02117: f2 pushp push(PSW);
02118: 32,0a,f1 jnb B2,Ra,0210c if (HSI_Ready = 0) goto 0210c; }
0211b: c9,91,26 push 2691 push(2691);
....
....
It's a time waster... something in the hardware will need a defined amount of time to change state, and this is a way to build in a short delay. Looks like it's for HSI (high speed input).. You will also sometimes see a series of NOP (no operations),
while I am here - not sure if this is time waster or something for a specialist chip - does anyone know ??? (URAL bin)
Code: Select all
2236: ef,ea,4d call 7023 Sub_7023 ();
2239: ef,0c,4e call 7048 Sub_7048 ();
223c: c3,01,00,1f,00 stw R0,[R0+1f00] [1f00] = 0;
2241: c3,01,00,1f,00 stw R0,[R0+1f00] [1f00] = 0;
2246: c3,01,00,1f,00 stw R0,[R0+1f00] [1f00] = 0;
224b: c3,01,00,1f,00 stw R0,[R0+1f00] [1f00] = 0;
2250: c3,01,00,1f,00 stw R0,[R0+1f00] [1f00] = 0;
2255: c3,01,00,1f,00 stw R0,[R0+1f00] [1f00] = 0;
.....