/* */
/* */
/* */
-/* (C) 2001-2002 Ullrich von Bassewitz */
-/* Wacholderweg 14 */
-/* D-70597 Stuttgart */
-/* EMail: uz@musoftware.de */
+/* (C) 2001-2009, Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
+/* D-70794 Filderstadt */
+/* EMail: uz@cc65.org */
/* */
/* */
/* This software is provided 'as-is', without any expressed or implied */
+/*****************************************************************************/
+/* Data */
+/*****************************************************************************/
+
+
+
/* Additional key defines */
-#define CH_ESC 27
#define CH_F1 224
#define CH_F2 225
#define CH_F3 226
#define CH_F19 242
#define CH_F20 243
-
-
/* Color defines */
#define COLOR_BLACK 0x00
#define COLOR_WHITE 0x01
#define COLOR_RED 0x02
#define COLOR_CYAN 0x03
#define COLOR_VIOLET 0x04
+#define COLOR_PURPLE COLOR_VIOLET
#define COLOR_GREEN 0x05
#define COLOR_BLUE 0x06
#define COLOR_YELLOW 0x07
#define COLOR_LIGHTBLUE 0x0E
#define COLOR_GRAY3 0x0F
-
-
-/* Special routines to read/write bytes and words in the system bank */
-unsigned char __fastcall__ peekbsys (unsigned addr);
-unsigned __fastcall__ peekwsys (unsigned addr);
-void __fastcall__ pokebsys (unsigned addr, unsigned char val);
-void __fastcall__ pokewsys (unsigned addr, unsigned val);
-
-#if defined(__OPT_i__) && defined(__OPT_s__)
-#define peekbsys(addr) \
- __AX__ = (addr), \
- asm ("sta ptr1"), \
- asm ("stx ptr1+1"), \
- asm ("ldx $01"), \
- asm ("lda #$0F"), \
- asm ("sta $01"), \
- asm ("ldy #$00"), \
- asm ("lda (ptr1),y"), \
- asm ("stx $01"), \
- asm ("ldx #$00"), \
- __AX__
-#endif
-
-
-
/* Define hardware */
#include <_vic2.h>
#define VIC (*(struct __vic2*)0xD800)
#define SID (*(struct __sid*)0xDA00)
#include <_6526.h>
-#define CIA (*(struct __cia*)0xDC00)
+#define CIA (*(struct __6526*)0xDC00)
#include <_6551.h>
#define ACIA (*(struct __6551*)0xDD00)
+/*****************************************************************************/
+/* Code */
+/*****************************************************************************/
+
+
+
+/* Special routines to read/write bytes and words in the system bank */
+unsigned char __fastcall__ peekbsys (unsigned addr);
+unsigned __fastcall__ peekwsys (unsigned addr);
+void __fastcall__ pokebsys (unsigned addr, unsigned char val);
+void __fastcall__ pokewsys (unsigned addr, unsigned val);
+
+#if defined(__OPT_i__) && (__OPT_i__ >= 600)
+#define peekbsys(addr) \
+ __AX__ = (addr), \
+ __asm__ ("sta ptr1"), \
+ __asm__ ("stx ptr1+1"), \
+ __asm__ ("ldx $01"), \
+ __asm__ ("lda #$0F"), \
+ __asm__ ("sta $01"), \
+ __asm__ ("ldy #$00"), \
+ __asm__ ("lda (ptr1),y"), \
+ __asm__ ("stx $01"), \
+ __asm__ ("ldx #$00"), \
+ __AX__
+#endif
+
+
+
/* End of cbm510.h */
#endif