# HG changeset patch
# User heinrichsweikamp
# Date 1314714561 -7200
# Node ID c512a868937c34ccb363c2d229d4bd1503069a61
# Parent  69f1f3a1c645ab404193ac2f4f61c2c406a76d22
last work for 2.0: Fixing 32kB boundary read for logbook

diff -r 69f1f3a1c645 -r c512a868937c code_part1/OSTC_code_asm_part1/definitions.asm
--- a/code_part1/OSTC_code_asm_part1/definitions.asm	Sun Aug 28 17:22:14 2011 +0200
+++ b/code_part1/OSTC_code_asm_part1/definitions.asm	Tue Aug 30 16:29:21 2011 +0200
@@ -21,10 +21,10 @@
 ; known bugs:
 ; ToDo:
 
-#DEFINE	softwareversion_x		d'1'		; Software version  XX.YY
-#DEFINE	softwareversion_y		d'98'		; Software version  XX.YY
+#DEFINE	softwareversion_x		d'2'		; Software version  XX.YY
+#DEFINE	softwareversion_y		d'0'		; Software version  XX.YY
 
-#DEFINE softwareversion_beta 	1 			; (and 0 for release) 
+#DEFINE softwareversion_beta 	0 			; (and 0 for release) 
 
 #DEFINE	max_custom_number		d'58'		; Number of last used custom function
 
@@ -455,7 +455,7 @@
 #DEFINE	switch_left			flag6,3	;=1: left switch pressed
 #DEFINE	switch_right		flag6,4	;=1: right switch pressed
 #DEFINE	uart_settime		flag6,5	;=1: enter time sync routine
-#DEFINE	FLAG_1              flag6,6	;=1: unused
+#DEFINE	eeprom_switched_b1  flag6,6	;=1: EEPROM read switched to bank1
 #DEFINE	twosecupdate		flag6,7	;=1: after any two seconds
 
 #DEFINE	dekostop_active			flag7,0	;=1: in deocompression mode
diff -r 69f1f3a1c645 -r c512a868937c code_part1/OSTC_code_asm_part1/i2c_eeprom.asm
--- a/code_part1/OSTC_code_asm_part1/i2c_eeprom.asm	Sun Aug 28 17:22:14 2011 +0200
+++ b/code_part1/OSTC_code_asm_part1/i2c_eeprom.asm	Tue Aug 30 16:29:21 2011 +0200
@@ -127,6 +127,7 @@
 	clrf		ext_ee_temp2		; high address counter
 	bcf			second_FD			; clear flags
 	bcf			first_FD
+	bcf			eeprom_switched_b1
 get_free_EEPROM_location3:
 	bsf			SSPCON2, PEN		; Stop condition
 	rcall		WaitMSSP	
@@ -157,6 +158,15 @@
 	rcall		I2C_WaitforACK
 
 get_free_EEPROM_location2:
+	btfsc		eeprom_switched_b1			; Switched to Block1 already?
+	bra			get_free_EEPROM_location2_x	; Yes, skip this check!
+
+	btfsc		ext_ee_temp2,7				; Access Block1?
+	bsf			eeprom_switched_b1			; Yes, and set the flag so this check is skipped in the rest of this routine
+	btfsc		ext_ee_temp2,7				; Access Block1?
+	bra			get_free_EEPROM_location3	; Yes, initiate new read sequence in block1
+
+get_free_EEPROM_location2_x:
 	bsf			SSPCON2, RCEN		; Enable recieve mode
 	rcall		WaitMSSP	
 	btfsc		first_FD
diff -r 69f1f3a1c645 -r c512a868937c code_part1/OSTC_code_asm_part1/interface.asm
--- a/code_part1/OSTC_code_asm_part1/interface.asm	Sun Aug 28 17:22:14 2011 +0200
+++ b/code_part1/OSTC_code_asm_part1/interface.asm	Tue Aug 30 16:29:21 2011 +0200
@@ -146,7 +146,7 @@
 	movlw		d'1'						; increase
 	addwf		eeprom_address+0,F
 	movlw		d'0'
-	addwfc	eeprom_address+1,F
+	addwfc		eeprom_address+1,F
 
 ;For debug only
 ;clrf	eeprom_address+0,F