Good point, Guess I need to follow it back some more and make sure before I assume.Is temp1l actually holding the value 0 though??
I was looking at the SAD 5.0.8 LST with the same DIR file and I get a ton of errors right off the top so I am going to leave that alone. LOL
Here is SAD 5
Code: Select all
Sub_028de:
028de: a1,00,0c,48 ldw R48,c00 FLG_TR_TMP = 0;
028e2: c7,48,3d,00 stb R0,[R48+3d] [FGTMP0L+3d] = ZERO;
028e6: a1,08,07,4a ldw R4a,708 DARC_HLOS = 0;
DARC_SIZE = 0;
DARC_COL = 0;
DARC_BSY = 1;
DARC_RSX = 0;
DARC_RS = 0;
028ea: 28,16 scall 02902 Sub_02902 ();
028ec: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
028f0: c7,49,88,00,52 stb R52,[R48+88] [FGTMP0L+88] = FGTMP5L;
028f5: c7,49,80,00,53 stb R53,[R48+80] [FGTMP0L+80] = FGTMP5H;
028fa: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
028fe: 35,c4,69 jnb B5,Rc4,0296a if (DARC_INIT_FLG = 1) {
02901: f0 ret return;
Sub_02902:
02902: a1,ed,cb,52 ldw R52,cbed DARC_RSX = 0;
02906: c7,49,88,00,52 stb R52,[R48+88] [FGTMP0L+88] = FGTMP5L;
0290b: c7,49,80,00,53 stb R53,[R48+80] [FGTMP0L+80] = FGTMP5H;
02910: f0 ret return;
02911: a1,00,0c,48 ldw R48,c00 FLG_TR_TMP = 0;
02915: c7,48,3d,00 stb R0,[R48+3d] [FGTMP0L+3d] = ZERO;
02919: a1,08,07,4a ldw R4a,708 DARC_HLOS = 0;
DARC_SIZE = 0;
DARC_COL = 0;
DARC_BSY = 1;
DARC_RSX = 0;
DARC_RS = 0;
0291d: 2f,e3 scall 02902 Sub_02902 ();
0291f: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
02923: c7,49,88,00,52 stb R52,[R48+88] [FGTMP0L+88] = FGTMP5L;
02928: c7,49,80,00,53 stb R53,[R48+80] [FGTMP0L+80] = FGTMP5H;
0292d: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
02931: a0,48,4c ldw R4c,R48 FGTMP2L = FGTMP0L;
02934: a1,b2,10,4e ldw R4e,10b2 FGTMP3L = 10b2;
02938: a1,c2,10,50 ldw R50,10c2 FGTMP4L = MFP_DTY_HI;
0293c: b2,51,4a ldb R4a,[R50++] FGTMP1L = [FGTMP4L];
0293f: a2,4f,52 ldw R52,[R4e++] FGTMP5L = [FGTMP3L];
02942: c7,4c,41,4a stb R4a,[R4c+41] [FGTMP2L+41] = FGTMP1L;
02946: c3,4c,40,52 stw R52,[R4c+40] [FGTMP2L+40] = FGTMP5L;
0294a: 65,04,00,4c ad2w R4c,4 FGTMP2L += 4;
0294e: 89,c2,10,4e cmpw R4e,10c2
02952: d3,e8 jnc 0293c if (FGTMP3L < 10c2) goto 0293c;
02954: b0,ac,4c ldb R4c,Rac FGTMP2L = DARC_OUT_IMA;
Code: Select all
Sub_028de:
028de: a1,00,0c,48 ldw R48,c00 FGTMP0L = DRC_DTI0_CON;
028e2: c7,48,3d,00 stb R0,[R48+3d] [FGTMP0L+3d] = ZERO;
028e6: a1,08,07,4a ldw R4a,708 FGTMP1L = P0208STATE;
028ea: 28,16 scall 02902 Sub_02902 ();
028ec: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
028f0: c7,49,88,00,52 stb R52,[R48+88] [FGTMP0L+88] = FGTMP5L;
028f5: c7,49,80,00,53 stb R53,[R48+80] [FGTMP0L+80] = FGTMP5H;
028fa: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
028fe: 35,c4,69 jnb B5,Rc4,0296a if (DARC_INIT_FLG = 1) {
02901: f0 ret return;
Sub_02902:
02902: a1,ed,cb,52 ldw R52,cbed FGTMP5L = cbed;
02906: c7,49,88,00,52 stb R52,[R48+88] [FGTMP0L+88] = FGTMP5L;
0290b: c7,49,80,00,53 stb R53,[R48+80] [FGTMP0L+80] = FGTMP5H;
02910: f0 ret return;
02911: a1,00,0c,48 ldw R48,c00 FGTMP0L = DRC_DTI0_CON;
02915: c7,48,3d,00 stb R0,[R48+3d] [FGTMP0L+3d] = ZERO;
02919: a1,08,07,4a ldw R4a,708 FGTMP1L = P0208STATE;
0291d: 2f,e3 scall 02902 Sub_02902 ();
0291f: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
02923: c7,49,88,00,52 stb R52,[R48+88] [FGTMP0L+88] = FGTMP5L;
02928: c7,49,80,00,53 stb R53,[R48+80] [FGTMP0L+80] = FGTMP5H;
0292d: c3,48,3c,4a stw R4a,[R48+3c] [FGTMP0L+3c] = FGTMP1L;
02931: a0,48,4c ldw R4c,R48 FGTMP2L = FGTMP0L;
02934: a1,b2,10,4e ldw R4e,10b2 FGTMP3L = 10b2;
02938: a1,c2,10,50 ldw R50,10c2 FGTMP4L = 10c2;
0293c: b2,51,4a ldb R4a,[R50++] FGTMP1L = [FGTMP4L];
0293f: a2,4f,52 ldw R52,[R4e++] FGTMP5L = [FGTMP3L];
02942: c7,4c,41,4a stb R4a,[R4c+41] [FGTMP2L+41] = FGTMP1L;
02946: c3,4c,40,52 stw R52,[R4c+40] [FGTMP2L+40] = FGTMP5L;
0294a: 65,04,00,4c ad2w R4c,4 FGTMP2L += 4;
0294e: 89,c2,10,4e cmpw R4e,10c2
02952: d3,e8 jnc 0293c if (FGTMP3L < 10c2) goto 0293c;
02954: b0,ac,4c ldb R4c,Rac FGTMP2L = DARC_OUT_IMA;