; This file was generated by C2C++ compiler version 5.9.7e

    DEVICE SX28, PINS28, PAGES4, BANKS8, TURBO
    DEVICE STACKX, OPTIONX, OSC4MHZ
    FREQ 4_000_000
    ID 'C2C test'


;Variables *****************************************
org $8
_code_tmp_0000                  equ 08   ;1 general RAM
_os_main                        equ 09   ;1 general RAM
_slowLED_main                   equ 16   ;7 bank 0
_mediumLED_main                 equ 23   ;7 bank 0
_fastLED_main                   equ 48   ;7 bank 1
_this__Task_Task_00             equ 10   ;1 general RAM
_this__tick_Task_00             equ 11   ;1 general RAM
_this__OS_OS_00                 equ 12   ;1 general RAM
_this__addTask_OS_10            equ 13   ;1 general RAM
_this__tick_OS_00               equ 14   ;1 general RAM
_this__LED_LED_00               equ 15   ;1 general RAM
_this__SlowLED_SlowLED_01       equ 30   ;1 bank 0
_this__MediumLED_MediumLED_01   equ 31   ;1 bank 0
_this__FastLED_FastLED_01       equ 55   ;1 bank 1
_clock                          equ 56   ;1 bank 1
param00_addTask_OS_10           equ 57   ;1 bank 1
param00_SlowLED_SlowLED_01      equ 58   ;1 bank 1
param00_MediumLED_MediumLED_01  equ 59   ;1 bank 1
param00_FastLED_FastLED_01      equ 60   ;1 bank 1
_nd_addTask                     equ 61   ;1 bank 1
_nd_tick                        equ 61   ;1 bank 1
_rtcc                           equ 01   ;1 general RAM
_pc                             equ 02   ;1 general RAM
_status                         equ 03   ;1 general RAM
_fsr                            equ 04   ;1 general RAM
_indf                           equ 00   ;1 general RAM
_this__tick_LED_00              equ 11   ;1 general RAM
	reset	start ;set reset jump address

	org 0
	;;;;;;;;
	;;;;;;;;void interrupt( void )
_interrupt
_interrupt__code
	;;;;;;;;{
	;;;;;;;; //Interrupt implememtation should be as small as
	;;;;;;;;
	;;;;;;;; //possible so we will just set flag in this routine
	;;;;;;;;
	;;;;;;;; //and it will be checked in the main endless loop
	;;;;;;;;
	;;;;;;;; clock++;
	bank 030h
	inc _clock
	;;;;;;;;
	;;;;;;;;//clear TMR0 overflow flag
	;;;;;;;;
	;;;;;;;;}
destr__interrupt
	reti
_interrupt__end

start
	jmp start__code
_Task_Task_00
	jmp _Task_Task_00__code
_tick_Task_00
	jmp _tick_Task_00__code
_OS_OS_00
	jmp _OS_OS_00__code
_addTask_OS_10
	jmp _addTask_OS_10__code
_tick_OS_00
	jmp _tick_OS_00__code
_LED_LED_00
	jmp _LED_LED_00__code
_tick_LED_00
	jmp _tick_LED_00__code
_SlowLED_SlowLED_01
	jmp _SlowLED_SlowLED_01__code
_MediumLED_MediumLED_01
	jmp _MediumLED_MediumLED_01__code
_FastLED_FastLED_01
	jmp _FastLED_FastLED_01__code
Task_tick__00
	add PC, w
	page 0   
	jmp _tick_Task_00
	page 0   
	jmp _tick_LED_00
start__code
	bank 030h
	clr _clock
	;;;;;;;;/**
	;;;;;;;;	System header file for BoostC, C2C-plus and C2C++ compilers
	;;;;;;;;	Copyrights(C) 2003-2005 Pavel Baranov
	;;;;;;;;*/# 20
	;;;;;;;;//_PIC12C508
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12C508A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12C509
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12C509A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12CR509A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12CE518
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12CE519
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12F629
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12C671
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12C672
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12CE673
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12CE674
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12F675
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC12F683
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C52
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C54
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR54
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C55
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C56
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR56
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C57
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR57
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C58
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR58
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C61
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C62
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C62A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C62B
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR62
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C63
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C63A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR63
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C64
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C64A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR64
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C65
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C65A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C65B
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR65
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C66
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C67
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C71
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C72
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C72A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR72
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F72
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C73
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F73
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C73A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C73B
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C74
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F74
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C74A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C74B
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C76
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F76
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C77
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F77
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F737
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F747
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F767
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F777
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F83
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR83
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C84
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F84
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F84A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR84
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C505
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C620
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C620A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CR620A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C621
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C621A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C622
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C622A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CE623
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CE624
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16CE625
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F627
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F627A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F628
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F628A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F630
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C641
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C642
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F648A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C661
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C662
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F676
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F684
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F688
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C710
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C711
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C712
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C715
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C716
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C717
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C745
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C765
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C770
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C771
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C773
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C774
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F87
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F818
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F819
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F870
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F871
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F872
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F873
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F873A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F874
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F874A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F876
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F876A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F877
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F877A
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16F88
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C923
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC16C924
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_SX18
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_SX18AC
	;;;;;;;;char rtcc@0x01;
	;;;;;;;;char pc@0x02;
	;;;;;;;;char status@0x03;
	;;;;;;;;char fsr@0x04;
	;;;;;;;;char ra@0x05;
	;;;;;;;;char rb@0x06;
	;;;;;;;;char rc@0x07;
	;;;;;;;;char indf@0x00;
	;;;;;;;;//_SX28
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_SX28AC
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_SX48BD
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_SX48BD
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C242
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C252
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C442
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C452
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C601
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C658
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C801
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18C858
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18CXXX
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F1220
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F1320
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2220
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2320
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2331
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F242
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2431
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2439
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2455
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F248
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2510
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2515
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F252
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2520
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2525
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2539
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2550
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F258
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2585
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2610
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2620
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2680
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F2681
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4220
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4320
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4331
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F442
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4431
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4439
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4455
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F448
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4510
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4515
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F452
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4520
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4525
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4539
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4550
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F458
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4585
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4610
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4620
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4680
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F4681
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6410
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6490
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6520
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6525
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6585
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6620
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6621
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6680
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F6720
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8410
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8490
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8520
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8525
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8585
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8620
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8621
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8680
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_PIC18F8720
	;;;;;;;;
	;;;;;;;;// _BOOSTC
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;//_SYSTEM_H_
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;class Task
	;;;;;;;;{
	;;;;;;;; Task();
	;;;;;;;;
	;;;;;;;; virtual void tick(void);
	;;;;;;;;
	;;;;;;;; class Task *m_nextTask;
	;;;;;;;;};
	;;;;;;;;
	;;;;;;;;class OS
	;;;;;;;;{
	;;;;;;;; OS();
	;;;;;;;;
	;;;;;;;; void addTask(class Task*);
	;;;;;;;; void tick(void);
	;;;;;;;;
	;;;;;;;; class Task *m_firstTask;
	;;;;;;;;};
	;;;;;;;;
	;;;;;;;;Task::Task()
	;;;;;;;;
	;;;;;;;;void Task::tick(void)
	;;;;;;;;
	;;;;;;;;OS::OS()
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;void OS::addTask( class Task *task )
	;;;;;;;;
	;;;;;;;;void OS::tick( void )
	;;;;;;;;
	;;;;;;;;/////////////////////////////////////////////////
	;;;;;;;;
	;;;;;;;;// LED tasks
	;;;;;;;;
	;;;;;;;;/////////////////////////////////////////////////
	;;;;;;;;
	;;;;;;;;class LED : public Task
	;;;;;;;;{
	;;;;;;;; LED();
	;;;;;;;; virtual void tick( void );
	;;;;;;;;
	;;;;;;;; char m_ledState;
	;;;;;;;; char m_ledMask;
	;;;;;;;; char m_counter;
	;;;;;;;; char m_limit;
	;;;;;;;;};
	;;;;;;;;
	;;;;;;;;class SlowLED : public LED
	;;;;;;;;{
	;;;;;;;; SlowLED( char mask );
	;;;;;;;;};
	;;;;;;;;
	;;;;;;;;class MediumLED : public LED
	;;;;;;;;{
	;;;;;;;; MediumLED( char mask );
	;;;;;;;;};
	;;;;;;;;
	;;;;;;;;class FastLED : public LED
	;;;;;;;;{
	;;;;;;;; FastLED( char mask );
	;;;;;;;;};
	;;;;;;;;
	;;;;;;;;LED::LED()
	;;;;;;;;
	;;;;;;;;void LED::tick( void )
	;;;;;;;;
	;;;;;;;;SlowLED::SlowLED( char mask )
	;;;;;;;;
	;;;;;;;;MediumLED::MediumLED( char mask )
	;;;;;;;;
	;;;;;;;;FastLED::FastLED( char mask )
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;char clock = 0;
	;;;;;;;;
	;;;;;;;;void main( void )
_main__code
	mov w, #_os_main
	mov _this__OS_OS_00, w
	call _OS_OS_00
	page 0   
	mov w, #1
	bank 030h
	mov param00_SlowLED_SlowLED_01, w
	bank 010h
	mov w, #_slowLED_main
	mov _this__SlowLED_SlowLED_01, w
	call _SlowLED_SlowLED_01
	page 0   
	mov w, #5
	bank 010h
	mov _slowLED_main, w
	mov w, #2
	mov _slowLED_main+6 , w
	mov w, #2
	bank 030h
	mov param00_MediumLED_MediumLED_01, w
	bank 010h
	mov w, #_mediumLED_main
	mov _this__MediumLED_MediumLED_01, w
	call _MediumLED_MediumLED_01
	page 0   
	mov w, #5
	bank 010h
	mov _mediumLED_main, w
	mov w, #2
	mov _mediumLED_main+6 , w
	mov w, #4
	bank 030h
	mov param00_FastLED_FastLED_01, w
	mov w, #_fastLED_main
	mov _this__FastLED_FastLED_01, w
	call _FastLED_FastLED_01
	page 0   
	mov w, #5
	bank 030h
	mov _fastLED_main, w
	mov w, #2
	mov _fastLED_main+6 , w
	;;;;;;;;{
	;;;;;;;; //Hardware Initialization
	;;;;;;;;
	;;;;;;;;
	;;;;;;;; set_tris_b( ~15 );
	mov w, #240
	mov !rb, w
	;;;;;;;; output_port_b( 255 );
	mov w, #255
	mov rb, w
	;;;;;;;; set_option( 135 ); //set prescaler 1:256
	mov w, #135
	mov !option, w
	;;;;;;;;//enable TMR0 overflow bit
	;;;;;;;;
	;;;;;;;;
	;;;;;;;; //Declare OS
	;;;;;;;;
	;;;;;;;; OS os;
	;;;;;;;; //Declare 3 tasks
	;;;;;;;;
	;;;;;;;; SlowLED slowLED( 1 );
	;;;;;;;; MediumLED mediumLED( 2 );
	;;;;;;;; FastLED fastLED( 4 );
	;;;;;;;;
	;;;;;;;; //Add tasks to OS
	;;;;;;;;
	;;;;;;;; os.addTask( &slowLED );
	mov w, #_slowLED_main
	mov param00_addTask_OS_10, w
	mov w, #_os_main+0 
	mov _this__addTask_OS_10, w
	call _addTask_OS_10
	page 0   
	;;;;;;;; os.addTask( &mediumLED );
	mov w, #_mediumLED_main
	bank 030h
	mov param00_addTask_OS_10, w
	mov w, #_os_main+0 
	mov _this__addTask_OS_10, w
	call _addTask_OS_10
	page 0   
	;;;;;;;; os.addTask( &fastLED );
	mov w, #_fastLED_main
	bank 030h
	mov param00_addTask_OS_10, w
	mov w, #_os_main+0 
	mov _this__addTask_OS_10, w
	call _addTask_OS_10
	page 0   
	;;;;;;;;
	;;;;;;;; //Endless loop
	;;;;;;;;
	;;;;;;;; while( 1 )
label_0007
	;;;;;;;; {
	;;;;;;;; while( clock == 0 );
label_0009
	bank 030h
	test _clock
	sb 3.2
	jmp label_0010
	;;;;;;;; clock = 0;
	jmp label_0009
label_0010
	bank 030h
	clr _clock
	;;;;;;;; os.tick();
	mov w, #_os_main+0 
	mov _this__tick_OS_00, w
	call _tick_OS_00
	page 0   
	;;;;;;;; }
	;;;;;;;;}
	jmp label_0007
label_0008
_main__end
_Task_Task_00__code
	;;;;;;;;{
	;;;;;;;; m_nextTask = 0;
	clr _code_tmp_0000
	mov w, _this__Task_Task_00
	mov FSR, w
	mov w, #1
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;;}
destr__Task_Task_00
	ret
_Task_Task_00__end
_tick_Task_00__code
	;;;;;;;;{
	;;;;;;;;}
destr__tick_Task_00
	ret
_tick_Task_00__end
_OS_OS_00__code
	;;;;;;;;{
	;;;;;;;; m_firstTask = 0;
	clr _code_tmp_0000
	mov w, _this__OS_OS_00
	mov FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;;}
destr__OS_OS_00
	ret
_OS_OS_00__end
_addTask_OS_10__code
	;;;;;;;;{
	;;;;;;;; Task *nd;
	;;;;;;;; if( m_firstTask == 0 )
	mov w, _this__addTask_OS_10
	mov FSR, w
	mov w, INDF
	mov _code_tmp_0000 , w
	mov w, #0
	mov w, _code_tmp_0000 -w
	sb 3.2
	jmp label_0000
	;;;;;;;; m_firstTask = task;
	bank 030h
	mov w, param00_addTask_OS_10
	mov _code_tmp_0000 , w
	mov w, _this__addTask_OS_10
	mov FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;; else
	jmp label_0001
label_0000
	;;;;;;;; {
	;;;;;;;; nd = m_firstTask;
	mov w, _this__addTask_OS_10
	mov FSR, w
	mov w, INDF
	bank 030h
	mov _nd_addTask, w
	;;;;;;;; while( nd->m_nextTask )
label_0002
	bank 030h
	mov w, _nd_addTask
	mov FSR, w
	mov w, #1
	add FSR, w
	mov w, INDF
	and w, #255
	snb 3.2
	jmp label_0003
	;;;;;;;; nd = nd->m_nextTask;
	bank 030h
	mov w, _nd_addTask
	mov FSR, w
	mov w, #1
	add FSR, w
	mov w, INDF
	bank 030h
	mov _nd_addTask, w
	;;;;;;;; nd->m_nextTask = task;
	jmp label_0002
label_0003
	bank 030h
	mov w, param00_addTask_OS_10
	mov _code_tmp_0000 , w
	mov w, _nd_addTask
	mov FSR, w
	mov w, #1
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;; }
	;;;;;;;;}
label_0001
destr__addTask_OS_10
	ret
_addTask_OS_10__end
_tick_OS_00__code
	mov w, _this__tick_OS_00
	mov FSR, w
	mov w, INDF
	bank 030h
	mov _nd_tick, w
	;;;;;;;;{
	;;;;;;;; Task *nd = m_firstTask;
	;;;;;;;; while( nd )
label_0004
	bank 030h
	mov w, _nd_tick
	snb 3.2
	jmp label_0005
	;;;;;;;; {
	;;;;;;;; nd->tick();
	mov w, _nd_tick+0 
	mov _this__tick_Task_00, w
	mov w, _this__tick_Task_00
	mov FSR, w
	mov w, ++INDF
	add FSR, w
	mov w, INDF
	call Task_tick__00
	page 0   
	;;;;;;;; nd = nd->m_nextTask;
	bank 030h
	mov w, _nd_tick
	mov FSR, w
	mov w, #1
	add FSR, w
	mov w, INDF
	bank 030h
	mov _nd_tick, w
	;;;;;;;; }
	;;;;;;;;}
	jmp label_0004
label_0005
destr__tick_OS_00
	ret
_tick_OS_00__end
_LED_LED_00__code
	;;;;;;;;{
	mov w, _this__LED_LED_00
	mov _this__Task_Task_00, w
	call _Task_Task_00
	page 0   
	;;;;;;;; m_ledState = 0;
	clr _code_tmp_0000
	mov w, _this__LED_LED_00
	mov FSR, w
	mov w, #2
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;; m_counter = 0;
	clr _code_tmp_0000
	mov w, _this__LED_LED_00
	mov FSR, w
	mov w, #4
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;;}
destr__LED_LED_00
	ret
_LED_LED_00__end
_tick_LED_00__code
	;;;;;;;;{
	;;;;;;;; m_counter++;
	mov w, _this__tick_LED_00
	mov FSR, w
	mov w, #4
	add FSR, w
	inc INDF
	;;;;;;;; if( m_counter >= m_limit )
	mov w, _this__tick_LED_00
	mov FSR, w
	mov w, #4
	add FSR, w
	mov w, INDF
	mov _code_tmp_0000 , w
	mov w, _this__tick_LED_00
	mov FSR, w
	mov w, #5
	add FSR, w
	mov w, INDF
	mov w, _code_tmp_0000 -w
	sb 3.0
	jmp label_0006
	;;;;;;;; {
	;;;;;;;; m_counter = 0;
	clr _code_tmp_0000
	mov w, _this__tick_LED_00
	mov FSR, w
	mov w, #4
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;;
	;;;;;;;; RB ^= m_ledMask;
	mov w, _this__tick_LED_00
	mov FSR, w
	mov w, #3
	add FSR, w
	mov w, INDF
	xor RB, w
	;;;;;;;;
	;;;;;;;;
	;;;;;;;;
	;;;;;;;; m_ledState = ~m_ledState;
	mov w, _this__tick_LED_00
	mov FSR, w
	mov w, #2
	add FSR, w
	mov w, INDF
	mov _code_tmp_0000 , w
	mov w, _this__tick_LED_00
	mov FSR, w
	mov w, #2
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;; }
	;;;;;;;;}
label_0006
destr__tick_LED_00
	ret
_tick_LED_00__end
_SlowLED_SlowLED_01__code
	;;;;;;;;{
	bank 010h
	mov w, _this__SlowLED_SlowLED_01
	mov _this__LED_LED_00, w
	call _LED_LED_00
	page 0   
	;;;;;;;; m_ledMask = mask;
	bank 030h
	mov w, param00_SlowLED_SlowLED_01
	mov _code_tmp_0000 , w
	bank 010h
	mov w, _this__SlowLED_SlowLED_01
	mov FSR, w
	mov w, #3
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;; m_limit = 250;
	mov w, #250
	mov _code_tmp_0000 , w
	bank 010h
	mov w, _this__SlowLED_SlowLED_01
	mov FSR, w
	mov w, #5
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;;}
destr__SlowLED_SlowLED_01
	ret
_SlowLED_SlowLED_01__end
_MediumLED_MediumLED_01__code
	;;;;;;;;{
	bank 010h
	mov w, _this__MediumLED_MediumLED_01
	mov _this__LED_LED_00, w
	call _LED_LED_00
	page 0   
	;;;;;;;; m_ledMask = mask;
	bank 030h
	mov w, param00_MediumLED_MediumLED_01
	mov _code_tmp_0000 , w
	bank 010h
	mov w, _this__MediumLED_MediumLED_01
	mov FSR, w
	mov w, #3
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;; m_limit = 120;
	mov w, #120
	mov _code_tmp_0000 , w
	bank 010h
	mov w, _this__MediumLED_MediumLED_01
	mov FSR, w
	mov w, #5
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;;}
destr__MediumLED_MediumLED_01
	ret
_MediumLED_MediumLED_01__end
_FastLED_FastLED_01__code
	;;;;;;;;{
	bank 030h
	mov w, _this__FastLED_FastLED_01
	mov _this__LED_LED_00, w
	call _LED_LED_00
	page 0   
	;;;;;;;; m_ledMask = mask;
	bank 030h
	mov w, param00_FastLED_FastLED_01
	mov _code_tmp_0000 , w
	mov w, _this__FastLED_FastLED_01
	mov FSR, w
	mov w, #3
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;; m_limit = 30;
	mov w, #30
	mov _code_tmp_0000 , w
	bank 030h
	mov w, _this__FastLED_FastLED_01
	mov FSR, w
	mov w, #5
	add FSR, w
	mov w, _code_tmp_0000 
	mov INDF, w
	;;;;;;;;}
destr__FastLED_FastLED_01
	ret
_FastLED_FastLED_01__end
;end
