;Патч SmsExitConfirm By NeO_2kX(c) for SGH-X100 Mobile Phone
;Использовать только при установленном патче X-Tend Navigator
;Заведомо не совместим с патчем 'NoSmsPowerExit'
.equ mcc_sms_exit 						0x007F79C8
.equ mcc_sms_exit_confirm 				0x008E62AC
.equ mcc_sms_text_editor 				0x007F2918
;000C88C6 = 16C6

;Правка MCFN_MCC_EDIT_S для отключения очистки буфера при нажатии клавиши 'вкл/выкл'
.start 0x0008942C
	BEQ		0x0008943A
	CMP		R0, #9
	BNE		0x0008945C
	B		0x0008943A

;Правка обработчика кнопки 'вкл/выкл' при написании смс
.start 0x007F2968
.mcc MCC_IF 0x9 0x1 0x9 0 mcc_sms_exit_confirm

;Правка обработчика кнопки 'вкл/выкл' в опциях новой смс
.start 0x007F2AA8  
.mcc MCC_IF 0x9 0x1 0x9 0 mcc_sms_exit_confirm

;Переход на расширение MCC_IF 0x8 0x32
.start 0x000C88EA
	LDR		R1, =Extended_MCC_If+1
	BX		R1
.data	
	
mcc_sms_exit_confirm:
.mcc MCC_IF 	0x8 0x32 0x3 0 mcc_sms_exit
.mcc MCC_INIT_RESTORE								;Инициализация	
.mcc MCC_CONFIRM 0x8 0x3D 0x3E 0x27 0 0x307			;Запрос 'Вы уверены ?'
.mcc MCC_IF 	0x9 0x1 0xE  0 mcc_sms_exit			;левая софт
.mcc MCC_ELSEIF 0x9 0x1 0x12 0 mcc_sms_exit			;i
.mcc MCC_ELSEIF 0x9 0x1 0x8  0 mcc_sms_exit			;Вызов

.mcc MCC_ELSEIF 0x9 0x1 0xF 0 mcc_sms_text_editor	;правая софт
.mcc MCC_ELSEIF 0x9 0x1 0x9 0 mcc_sms_exit			;вкл/выкл
.mcc MCC_ELSEIF 0x9 0x1 0x2 0 mcc_sms_text_editor	;С
.align 1
Extended_MCC_If:
	ADD		R1, SP, #0xBC

	CMP		R0, #2
	BNE		Extended_MCC_If_3
	
	LDRB	R1, [R1]
	CMP		R1, #12
	BEQ		Exit_Extended_MCC_If_Ok
	B		Exit_Extended_MCC_If_Ok_NULL
	
Extended_MCC_If_3:	
	CMP		R0, #3
	BNE		Exit_Extended_MCC_If_Ok
	
	LDRB	R1, [R1, #1]
	CMP		R1, #0
	BEQ		Exit_Extended_MCC_If_Ok

Exit_Extended_MCC_If_Ok_NULL:	
	MOV		R0, #0

Exit_Extended_MCC_If:	
	MOV		R7, R0
	LDR		R0, =0x000C8FDC+1
	BX		R0

Exit_Extended_MCC_If_Ok:
	MOV		R0, #1
	B		Exit_Extended_MCC_If
.data
	
	



