# output regs alias $out_vol, %30 alias $out_pitch, %31 alias $out_volbass, %32 alias $out_pitchbass, %33 alias $out_voldist, %34 alias $out_pitchdist, %35 # input regs alias $revs, %0 # transient regs alias $vol_diff, %10 alias $vol_target, %11 alias $vol_cur, %12 alias $last_revs, %13 # locals alias $vol, %14 alias $eng_speed, %15 # engine volume sub $vol_diff, $last_revs, $revs add $vol_target, 0.3, $revs clamp $vol, $vol_target, 0.2, 1.0 clamp $vol_target, $vol_target, 0.0, 1.0 #sub %20, $vol_target, $vol_cur #mul %20, %20, 0.5 #add $vol_cur, $vol_cur, %20 mov $vol_cur, $vol_target madd $out_vol, $vol_cur, 0.5, 0.7 # engine pitch div $eng_speed, $revs, 1.0 madd $out_pitch, $eng_speed, 0.35, 0.8 madd $out_pitchdist, $eng_speed, 0.55, 1.8 madd $out_pitchbass, $eng_speed, 0.65, 0.4 div $out_vol, $out_vol, 1 mov $out_voldist, $revs mov $out_volbass, $out_vol mul $out_pitch, $out_pitch, 1.0 mul $out_pitchdist, $out_pitchdist, 1.5 mul $out_pitchbass, $out_pitchbass, 1.0 div $out_vol, $out_vol, 1.50 div $out_voldist, $out_voldist, 1000.0 div $out_volbass, $out_volbass, 1.50 mov $out_vol, $revs clamp $out_vol, $out_vol, 1.00, 0.150 mov $out_volbass, $out_vol mov $out_voldist, $out_vol #mov $out_vol, 0 #mov $out_volbass, 0 mov $out_pitch, $revs mul $out_pitch, $out_pitch, 2.66250 clamp $out_pitch, $out_pitch, 2.130, 0.350 mov $out_pitchbass, $out_pitch mov $out_pitchdist, $revs mul $out_pitchdist, $out_pitchdist, 1.4680 clamp $out_pitchdist, $out_pitchdist, 1.175, 0.750 #mov $out_pitchdist, 1.1750 #mov $out_pitchbass, 1.0