changeset 179:77ab44108c07

BUGFIX: Inactive gases greyed-out in Simulator results BUGFIX: "Better Gas" now works for Gas 4 and Gas 5, as well
author Heinrichsweikamp
date Sun, 06 Feb 2011 09:37:07 +0100
parents 29ff788487fc
children 8aced3c7590c
files code_part1/OSTC_code_asm_part1/changelog.txt code_part1/OSTC_code_asm_part1/divemode.asm code_part1/OSTC_code_asm_part1/pled_outputs.asm
diffstat 3 files changed, 12 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/code_part1/OSTC_code_asm_part1/changelog.txt	Fri Feb 04 23:31:47 2011 +0100
+++ b/code_part1/OSTC_code_asm_part1/changelog.txt	Sun Feb 06 09:37:07 2011 +0100
@@ -3,6 +3,8 @@
 CHANGE: ZH-L16 display all stops (up to 93m), as ZH-L16-GF mode.
 BUGFIX: Don't wrap TTS sum (still limit each stop display (not compute) to ~4h).
 NEW: CF54: Display shallowest stop first (decoplan and divemode).
+BUGFIX: Inactive gases greyed-out in Simulator results
+BUGFIX: "Better Gas" now works for Gas 4 and Gas 5, as well
 
 New in 1.80 Stable:
 Stable release
--- a/code_part1/OSTC_code_asm_part1/divemode.asm	Fri Feb 04 23:31:47 2011 +0100
+++ b/code_part1/OSTC_code_asm_part1/divemode.asm	Sun Feb 06 09:37:07 2011 +0100
@@ -931,6 +931,7 @@
 	bra		check_gas_change5		; Yes, skip depth check
 check_gas_change4x:	
 	read_int_eeprom		d'31'		; read gas_change_depth
+	movlw	d'3'
 	cpfsgt	EEDATA					; Change depth>3m?
 	bra		check_gas_change5		; No, Change depth not deep enough, skip!
 	movf	xC+0,W					; load depth in m into WREG
@@ -951,6 +952,7 @@
 	bra		check_gas_change6		; Yes, skip depth check
 check_gas_change5x:	
 	read_int_eeprom		d'32'		; read gas_change_depth
+	movlw	d'3'
 	cpfsgt	EEDATA					; Change depth>3m?
 	bra		check_gas_change6		; No, Change depth not deep enough, skip!
 	movf	xC+0,W					; load depth in m into WREG
--- a/code_part1/OSTC_code_asm_part1/pled_outputs.asm	Fri Feb 04 23:31:47 2011 +0100
+++ b/code_part1/OSTC_code_asm_part1/pled_outputs.asm	Sun Feb 06 09:37:07 2011 +0100
@@ -3013,6 +3013,7 @@
 	addlw	d'27'			; -> Adress of change depth register
 	call	read_int_eeprom_1
 	movff	EEDATA,lo		; Change depth in m
+	movff	lo,lo_temp		; Store for grey-out
 	output_99				; outputs into Postinc2!
     PUTC    'm'
 	read_int_eeprom		d'27'	; read flag register
@@ -3022,9 +3023,13 @@
 	decfsz	lo,F			; max. 5 times...
 	bra		PLED_simdata_screen2_loop1
 	
-	btfsc	STATUS,C		; test carry
-	bra		PLED_simdata_white
-
+	btfss	STATUS,C		; test inactive flag
+	bra		PLED_simdata_grey	; Is inactive!
+	
+	tstfsz	lo_temp			; Test change depth=0?
+	bra		PLED_simdata_white	; Is not zero
+
+PLED_simdata_grey:
 	movlw	color_grey
 	call	PLED_set_color	; grey out inactive gases!
 	bra		PLED_simdata_color_done