Rename Files of different Devices
[owSlave2.git] / common / OWRomFunctions.s
index fdcc919..41a952f 100644 (file)
 #define OW_SEARCHROMR 4  ; next resive master answer
 #define OW_READROM 5
 #define OW_READ_COMMAND 6
+#define OW_FWCONFIGINFO 7
 
 
 #ifdef _CHANGEABLE_ID_
-#define OW_WRITE_NEWID 7
-#define OW_READ_NEWID 8
-#define OW_SET_NEWID 9
-#define OW_FIRST_COMMAND 10
+#define OW_WRITE_NEWID 8
+#define OW_READ_NEWID 9
+#define OW_SET_NEWID 10
+#define OW_FIRST_COMMAND 11
 .comm newid,8
 
        
@@ -79,7 +80,7 @@
 
 
 #else
-#define OW_FIRST_COMMAND 7
+#define OW_FIRST_COMMAND 8
 #endif
 
 #ifndef _DIS_FLASH_
@@ -93,6 +94,9 @@
 .endm
 #endif
 
+.macro FW_CONFIG_INFO
+       cljmp 0x85,hrc_fw_configinfo
+.endm
 
 
 #ifdef _CHANGEABLE_ID_
@@ -135,6 +139,7 @@ handle_stable:
                rjmp h_searchromr
                rjmp h_readrom
                rjmp h_readcommand 
+               rjmp h_fwconfiginfo
 #ifdef _CHANGEABLE_ID_
                rjmp h_writeid
                rjmp h_readid
@@ -193,6 +198,13 @@ hrc_set_alarm_search:
        ; sonst tue nichts
        rjmp handle_end_sleep
 
+
+hrc_fw_configinfo:
+       ldi r_mode,OW_FWCONFIGINFO
+       ldi r_sendflag,1
+       rjmp h_fwconfiginfo
+
+
 ;---------------------------------------------------
 ;   MATCH ROM
 ;---------------------------------------------------
@@ -290,6 +302,39 @@ h_readrom_all:
        rjmp handle_end_sleep
 
 
+;---------------------------------------------------
+;   FW_CONFIG_INFO
+;---------------------------------------------------
+
+h_fwconfiginfo:
+       cpi  r_bytep,16
+       breq h_fwconfiginfo_crc
+#ifdef _CRC8_
+       cpi  r_bytep,17
+       breq h_fwconfiginfo_all
+#elif defined _CRC16_
+       cpi  r_bytep,17
+       breq h_fwconfiginfo_crc2
+       cpi  r_bytep,18
+       breq h_fwconfiginfo_all
+#else
+       cpi  r_bytep,16
+       breq h_fwconfiginfo_all
+#warning No CRC known code implemented
+#endif
+       configZ config_info,r_bytep
+       ld   r_rwbyte,Z
+       rjmp handle_end_inc
+h_fwconfiginfo_crc:
+       lds r_rwbyte,crc
+       rjmp handle_end_inc
+h_fwconfiginfo_crc2:
+       lds r_rwbyte,crc+1
+       rjmp handle_end_inc
+h_fwconfiginfo_all:
+       rjmp handle_end_sleep
+
+
 ;---------------------------------------------------
 ;   CHANGE ROM FUNCTIONS
 ;---------------------------------------------------