the "EXT" modifier make this a breeze , see if you can follow this example
to saveCode:amps Var Word ext ;chg mA volts Var Word ext ;chg V kp var word ext kd var word ext ki var word ext f_0 var byte ext f_1 var byte ext f_2 var byte ext f_3 var byte ext setpoint var word ext ;out volts cl var word ext ;current limit flgs VAR byte ext drive var word ext ;current pwm value a_cal var word ext v_cal var word ext bat_r Var byte ext ;bits 0:3 is batt being charged , 4:7 batt connected flg data_blk var byte[26] asm volts = _data_blk ;01 amps = _data_blk+2 ;23 flgs = _data_blk+4 ;4 drive = _data_blk+5 ; 56 F_0 = _data_blk+7 F_1 = _data_blk+8 F_2 = _data_blk+9 F_3 = _data_blk+10 setpoint = _data_blk+11 ;1112 bat_r = _data_blk+13 ki = _data_blk+14 ;1415 cl = _data_blk+16 kp = _data_blk+18 kd = _data_blk+20 a_cal = _data_blk+22 v_cal = _data_blk+24 ;2425 endasm
to readCode:for n =0 to 25 write n, [data_blk[n]] next n
to just save vars f_0 to f_3Code:for n =0 to 25 read n, [data_blk[n]] next n
or even betterCode:for n =7 to 10 write n, [data_blk[n]] next n
Code:for n =0 to 3 write n, [f_0[n]] next n




Bookmarks