1 |
301 |
jshamlet |
; Copyright (c)2022 Jeremy Seth Henry
|
2 |
|
|
; All rights reserved.
|
3 |
|
|
;
|
4 |
|
|
; Redistribution and use in source and binary forms, with or without
|
5 |
|
|
; modification, are permitted provided that the following conditions are met:
|
6 |
|
|
; * Redistributions of source code must retain the above copyright
|
7 |
|
|
; notice, this list of conditions and the following disclaimer.
|
8 |
|
|
; * Redistributions in binary form must reproduce the above copyright
|
9 |
|
|
; notice, this list of conditions and the following disclaimer in the
|
10 |
|
|
; documentation and/or other materials provided with the distribution,
|
11 |
|
|
; where applicable (as part of a user interface, debugging port, etc.)
|
12 |
|
|
;
|
13 |
|
|
; THIS SOFTWARE IS PROVIDED BY JEREMY SETH HENRY ``AS IS'' AND ANY
|
14 |
|
|
; EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
15 |
|
|
; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
16 |
|
|
; DISCLAIMED. IN NO EVENT SHALL JEREMY SETH HENRY BE LIABLE FOR ANY
|
17 |
|
|
; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
18 |
|
|
; (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
19 |
|
|
; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
20 |
|
|
; ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
21 |
|
|
; (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
22 |
|
|
; THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23 |
|
|
;
|
24 |
|
|
;------------------------------------------------------------------------------
|
25 |
|
|
; task_0_consts.s
|
26 |
|
|
;
|
27 |
|
|
; Revision History
|
28 |
|
|
; Author Date Change
|
29 |
|
|
;---------------- -------- ---------------------------------------------------
|
30 |
|
|
; Seth Henry 7/15/22 Initial Release
|
31 |
|
|
;------------------------------------------------------------------------------
|
32 |
|
|
|
33 |
|
|
;------------------------------------------------------------------------------
|
34 |
|
|
; Task Manager Macros & Defines
|
35 |
|
|
;------------------------------------------------------------------------------
|
36 |
|
|
|
37 |
|
|
; Task supervisory functions (optional, but must be defined)
|
38 |
|
|
|
39 |
|
|
.MACRO TASK0_PANIC
|
40 |
|
|
.ENDM
|
41 |
|
|
|
42 |
|
|
.MACRO TASK0_SUPV_FN0
|
43 |
|
|
.ENDM
|
44 |
|
|
|
45 |
|
|
.MACRO TASK0_SUPV_FN1
|
46 |
|
|
.ENDM
|
47 |
|
|
|
48 |
|
|
.MACRO TASK0_SUPV_FN2
|
49 |
|
|
.ENDM
|
50 |
|
|
|
51 |
|
|
.MACRO TASK0_SUPV_FN3
|
52 |
|
|
.ENDM
|
53 |
|
|
|
54 |
|
|
.MACRO TASK0_SUPV_FN4
|
55 |
|
|
.ENDM
|
56 |
|
|
|
57 |
|
|
;------------------------------------------------------------------------------
|
58 |
|
|
|
59 |
|
|
;------------------------------------------------------------------------------
|
60 |
|
|
; I/O Mapping (HDL -> ASSY)
|
61 |
|
|
;------------------------------------------------------------------------------
|
62 |
|
|
|
63 |
|
|
;------------------------------------------------------------------------------
|
64 |
|
|
|
65 |
|
|
;------------------------------------------------------------------------------
|
66 |
|
|
; Pointer Defines and Memory Management
|
67 |
|
|
;------------------------------------------------------------------------------
|
68 |
|
|
|
69 |
|
|
.MACRO INSTANCE_TASK0_POINTERS
|
70 |
|
|
.ENDM
|
71 |
|
|
|
72 |
|
|
; Memory Structures and Variable Organization
|
73 |
|
|
|
74 |
|
|
; Variable Size Description
|
75 |
|
|
; -------- ---- -------------------------------------------------------
|
76 |
|
|
|
77 |
|
|
; Allocate the variable structures in memory
|
78 |
|
|
.ENUM TASK0_VARMEM
|
79 |
|
|
TSK0_TL INSTANCEOF str_task_label
|
80 |
|
|
.ENDE
|
81 |
|
|
|
82 |
|
|
.MACRO SET_TASK0_LABEL
|
83 |
|
|
LDI R0, #$54 ; T
|
84 |
|
|
STA R0, TSK0_TL.Label+0
|
85 |
|
|
LDI R0, #$30 ; 0
|
86 |
|
|
STA R0, TSK0_TL.Label+1
|
87 |
|
|
.ENDM
|
88 |
|
|
|
89 |
|
|
.MACRO INITIALIZE_TASK0_VARS
|
90 |
|
|
SET_TASK0_LABEL
|
91 |
|
|
.ENDM
|
92 |
|
|
;------------------------------------------------------------------------------
|