.module task1.c .area text ; i -> -2,x 0000 _task1:: 0000 34 pshx 0001 B775 tfr s,x 0003 1B9E leas -2,sp 0005 ; #include 0005 ; #include <912d60.h> 0005 ; #include "semlib.h" 0005 ; 0005 ; 0005 ; 0005 ; /* dummy task to eat up time, and to give the kernel 0005 ; something to multitask with */ 0005 ; void task1 (void) { 0005 ; 0005 ; int i; 0005 ; 0005 ; sem_get(COM1); 0005 CC0000 ldd #0 0008 160000 jsr _sem_get 000B ; INTR_ON(); 000B 10EF cli 000D 000D CC0000 ldd #0 0010 6C1E std -2,x 0012 L4: 0012 L5: 0012 ; 0012 ; 0012 ; //puts("T1 Starting"); 0012 ; for (i=0; i<0x1000; i++); 0012 EC1E ldd -2,x 0014 C30001 addd #1 0017 6C1E std -2,x 0019 EC1E ldd -2,x 001B 8C1000 cpd #4096 001E 2DF2 blt L4 0020 CC0000 ldd #0 0023 6C1E std -2,x 0025 L8: 0025 L9: 0025 ; //puts("T1.1"); 0025 ; 0025 ; for (i=0; i<0x1800; i++); 0025 EC1E ldd -2,x 0027 C30001 addd #1 002A 6C1E std -2,x 002C EC1E ldd -2,x 002E 8C1800 cpd #6144 0031 2DF2 blt L8 0033 CC0000 ldd #0 0036 6C1E std -2,x 0038 L12: 0038 L13: 0038 ; //puts("T1.2"); 0038 ; 0038 ; for (i=0; i<0x2000; i++); 0038 EC1E ldd -2,x 003A C30001 addd #1 003D 6C1E std -2,x 003F EC1E ldd -2,x 0041 8C2000 cpd #8192 0044 2DF2 blt L12 0046 CC0000 ldd #0 0049 6C1E std -2,x 004B L16: 004B L17: 004B ; //puts("T1.3"); 004B ; 004B ; for (i=0; i<0x2800; i++); 004B EC1E ldd -2,x 004D C30001 addd #1 0050 6C1E std -2,x 0052 EC1E ldd -2,x 0054 8C2800 cpd #10240 0057 2DF2 blt L16 0059 ; //puts("T1 Finished"); 0059 ; 0059 ; //puts("-T1-"); 0059 ; 0059 ; 0059 ; INTR_OFF(); 0059 1410 sei 005B 005B ; sem_give(COM1); 005B CC0000 ldd #0 005E 160000 jsr _sem_give 0061 ; 0061 ; } 0061 L3: 0061 B757 tfr x,s 0063 30 pulx 0064 .dbline 0 ; func end 0064 3D rts