]> git.sur5r.net Git - cc65/blob - asminc/em-kernel.inc
Working on the new serial code
[cc65] / asminc / em-kernel.inc
1 ;/*****************************************************************************/
2 ;/*                                                                           */
3 ;/*                              em-kernel.inc                                */
4 ;/*                                                                           */
5 ;/*                           EM kernel interface                             */
6 ;/*                                                                           */
7 ;/*                                                                           */
8 ;/*                                                                           */
9 ;/* (C) 2002-2003 Ullrich von Bassewitz                                       */
10 ;/*               Römerstrasse 52                                             */
11 ;/*               D-70794 Filderstadt                                         */
12 ;/* EMail:        uz@cc65.org                                                 */
13 ;/*                                                                           */
14 ;/*                                                                           */
15 ;/* This software is provided 'as-is', without any expressed or implied       */
16 ;/* warranty.  In no event will the authors be held liable for any damages    */
17 ;/* arising from the use of this software.                                    */
18 ;/*                                                                           */
19 ;/* Permission is granted to anyone to use this software for any purpose,     */
20 ;/* including commercial applications, and to alter it and redistribute it    */
21 ;/* freely, subject to the following restrictions:                            */
22 ;/*                                                                           */
23 ;/* 1. The origin of this software must not be misrepresented; you must not   */
24 ;/*    claim that you wrote the original software. If you use this software   */
25 ;/*    in a product, an acknowledgment in the product documentation would be  */
26 ;/*    appreciated but is not required.                                       */
27 ;/* 2. Altered source versions must be plainly marked as such, and must not   */
28 ;/*    be misrepresented as being the original software.                      */
29 ;/* 3. This notice may not be removed or altered from any source              */
30 ;/*    distribution.                                                          */
31 ;/*                                                                           */
32 ;/*****************************************************************************/
33
34
35
36 ;------------------------------------------------------------------------------
37 ; Driver header stuff
38
39 EMD_HDR_ID              = 0                     ; 0x65, 0x6d, 0x64 ("emd")
40 EMD_HDR_VERSION         = 3                     ; Interface version
41
42 EMD_HDR_JUMPTAB         = 4
43 EMD_HDR_INSTALL         = EMD_HDR_JUMPTAB+0     ; INSTALL routine
44 EMD_HDR_UNINSTALL       = EMD_HDR_JUMPTAB+2     ; UNINSTALL routine
45 EMD_HDR_PAGECOUNT       = EMD_HDR_JUMPTAB+4     ; PAGECOUNT routine
46 EMD_HDR_MAP             = EMD_HDR_JUMPTAB+6     ; MAP routine
47 EMD_HDR_USE             = EMD_HDR_JUMPTAB+8     ; USE routine
48 EMD_HDR_MAPCLEAN        = EMD_HDR_JUMPTAB+10    ; MAPCLEAN routine
49 EMD_HDR_COPYFROM        = EMD_HDR_JUMPTAB+12    ; COPYFROM routine
50 EMD_HDR_COPYTO          = EMD_HDR_JUMPTAB+14    ; COPYTO routine
51
52 EMD_HDR_JUMPCOUNT       = 8                     ; Number of jump vectors
53
54 ;------------------------------------------------------------------------------
55 ; Offsets into the em_copy structure
56
57 EM_COPY_BUF             = 0
58 EM_COPY_OFFS            = 2
59 EM_COPY_PAGE            = 3
60 EM_COPY_COUNT           = 5
61
62 ;------------------------------------------------------------------------------
63 ; Variables
64
65         .global _em_drv                         ; Pointer to driver
66
67 ;------------------------------------------------------------------------------
68 ; Driver entry points
69
70         .global emd_install
71         .global emd_uninstall
72         .global emd_pagecount
73         .global emd_map
74         .global emd_use
75         .global emd_commit
76         .global emd_copyfrom
77         .global emd_copyto
78
79 ;------------------------------------------------------------------------------
80 ; ASM functions
81
82         .global _em_install
83         .global _em_uninstall
84         .global _em_pagecount
85         .global _em_map
86         .global _em_use
87         .global _em_commit
88         .global _em_copyfrom
89         .global _em_copyto
90
91