From: ol.sc Date: Sat, 4 Feb 2012 17:51:17 +0000 (+0000) Subject: Moved the 'mousesprite' files from 'geos-cbm' to 'geos-common' which are believed... X-Git-Tag: V2.13.3~22 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a525fdafb0a33233793de557666735410d10e2d5;p=cc65 Moved the 'mousesprite' files from 'geos-cbm' to 'geos-common' which are believed to work as-is on Apple GEOS too. git-svn-id: svn://svn.cc65.org/cc65/trunk@5443 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- diff --git a/libsrc/geos-cbm/Makefile b/libsrc/geos-cbm/Makefile index 59d914fc6..057e07363 100644 --- a/libsrc/geos-cbm/Makefile +++ b/libsrc/geos-cbm/Makefile @@ -50,7 +50,6 @@ DIRS = common \ disk \ file \ memory \ - mousesprite \ process \ runtime \ system diff --git a/libsrc/geos-cbm/mousesprite/Makefile b/libsrc/geos-cbm/mousesprite/Makefile deleted file mode 100644 index f76ea33be..000000000 --- a/libsrc/geos-cbm/mousesprite/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# -# makefile for CC65 runtime library -# - -#-------------------------------------------------------------------------- -# Object files - -S_OBJS += startmousemode.o \ - clearmousemode.o \ - mouseup.o \ - mouseoff.o \ - drawsprite.o \ - possprite.o \ - enablsprite.o \ - disablsprite.o \ - ismseinregion.o \ - inittextprompt.o \ - promptoff.o \ - prompton.o \ - getnextchar.o \ - mouse.o diff --git a/libsrc/geos-cbm/mousesprite/clearmousemode.s b/libsrc/geos-cbm/mousesprite/clearmousemode.s deleted file mode 100644 index 17186cc9d..000000000 --- a/libsrc/geos-cbm/mousesprite/clearmousemode.s +++ /dev/null @@ -1,13 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; void ClearMouseMode (void); - - .export _ClearMouseMode - - .include "jumptab.inc" - -_ClearMouseMode = ClearMouseMode \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/disablsprite.s b/libsrc/geos-cbm/mousesprite/disablsprite.s deleted file mode 100644 index 37625d361..000000000 --- a/libsrc/geos-cbm/mousesprite/disablsprite.s +++ /dev/null @@ -1,16 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; void DisablSprite (char spritenum); - - .export _DisablSprite - - .include "jumptab.inc" - .include "geossym.inc" - -_DisablSprite: - sta r3L - jmp DisablSprite \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/drawsprite.s b/libsrc/geos-cbm/mousesprite/drawsprite.s deleted file mode 100644 index c5a071ebf..000000000 --- a/libsrc/geos-cbm/mousesprite/drawsprite.s +++ /dev/null @@ -1,23 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; -; void DrawSprite (char spritenum, char *tab63 ); -; - - .import popa - .export _DrawSprite - - .include "jumptab.inc" - .include "geossym.inc" - -_DrawSprite: - - sta r4L - stx r4H - jsr popa - sta r3L - jmp DrawSprite \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/enablsprite.s b/libsrc/geos-cbm/mousesprite/enablsprite.s deleted file mode 100644 index 7c8328421..000000000 --- a/libsrc/geos-cbm/mousesprite/enablsprite.s +++ /dev/null @@ -1,16 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; void EnablSprite (char spritenum); - - .export _EnablSprite - - .include "jumptab.inc" - .include "geossym.inc" - -_EnablSprite: - sta r3L - jmp EnablSprite \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/getnextchar.s b/libsrc/geos-cbm/mousesprite/getnextchar.s deleted file mode 100644 index 0ddbf1e99..000000000 --- a/libsrc/geos-cbm/mousesprite/getnextchar.s +++ /dev/null @@ -1,18 +0,0 @@ - -; -; Maciej 'YTM/Elysium' Witkowiak -; -; 21.12.1999, 2.1.2003 - -; char GetNextChar (void); -; note that if it returns 0 (FALSE) then no characters are available - - .export _GetNextChar - - .include "jumptab.inc" - -_GetNextChar: - jsr GetNextChar - ldx #0 - tay ; preserve Z flag - rts diff --git a/libsrc/geos-cbm/mousesprite/inittextprompt.s b/libsrc/geos-cbm/mousesprite/inittextprompt.s deleted file mode 100644 index 21c213544..000000000 --- a/libsrc/geos-cbm/mousesprite/inittextprompt.s +++ /dev/null @@ -1,13 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 21.12.99 - -; void InitTextPrompt (char height); - - .export _InitTextPrompt - - .include "jumptab.inc" - -_InitTextPrompt = InitTextPrompt \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/ismseinregion.s b/libsrc/geos-cbm/mousesprite/ismseinregion.s deleted file mode 100644 index 554ca58ef..000000000 --- a/libsrc/geos-cbm/mousesprite/ismseinregion.s +++ /dev/null @@ -1,19 +0,0 @@ - -; -; Maciej 'YTM/Elysium' Witkowiak -; -; 21.12.1999, 2.1.2003 - -; char IsMseInRegion (struct window *mywindow); - - .import _InitDrawWindow - - .export _IsMseInRegion - - .include "jumptab.inc" - -_IsMseInRegion: - jsr _InitDrawWindow - jsr IsMseInRegion - ldx #0 - rts diff --git a/libsrc/geos-cbm/mousesprite/mouse.s b/libsrc/geos-cbm/mousesprite/mouse.s deleted file mode 100644 index 1889c4f95..000000000 --- a/libsrc/geos-cbm/mousesprite/mouse.s +++ /dev/null @@ -1,194 +0,0 @@ -; -; Maciej 'YTM/Elysium' Witkowiak -; -; 2.7.2001 -; -; Wrapper for GEOS standard input device interface -; - - .export _mouse_init, _mouse_done - .export _mouse_hide, _mouse_show - .export _mouse_box - .export _mouse_pos, _mouse_info - .export _mouse_move, _mouse_buttons - - .import popsreg, addysp1 - .importzp sp, sreg, ptr1 - - .include "const.inc" - .include "jumptab.inc" - .include "geossym.inc" - - -.code - -; -------------------------------------------------------------------------- -; -; unsigned char __fastcall__ mouse_init (unsigned char type); -; - -_mouse_init: - jsr StartMouseMode - jsr MouseOff - - lda #0 - sta mouseTop - sta mouseLeft - sta mouseLeft+1 -.ifdef __GEOS_CBM__ - lda #199 - sta mouseBottom - lda graphMode - bpl _mse_screen320 - - lda #<639 ; 80 columns on C128 - ldx #>639 - bne _mse_storex -_mse_screen320: - lda #<319 ; 40 columns on C64/C128 - ldx #>319 -_mse_storex: -.else - lda #191 - sta mouseBottom - lda #<559 - ldx #>559 -.endif - sta mouseRight - stx mouseRight+1 -_mse_initend: - lda #0 - tax -; -------------------------------------------------------------------------- -; -; void mouse_done (void); -; -_mouse_done: - rts - -; -------------------------------------------------------------------------- -; -; void mouse_hide (void); -; - -_mouse_hide = MouseOff - -; -------------------------------------------------------------------------- -; -; void mouse_show (void); -; - -_mouse_show = MouseUp - -; -------------------------------------------------------------------------- -; -; void __fastcall__ mouse_box (int minx, int miny, int maxx, int maxy); -; - -_mouse_box: - ldy #0 ; Stack offset - - sta mouseBottom - - lda (sp),y - sta mouseRight - iny - lda (sp),y - sta mouseRight+1 ; maxx - - iny - lda (sp),y - sta mouseTop - iny ; Skip high byte - - iny - lda (sp),y - sta mouseLeft - iny - lda (sp),y - sta mouseLeft+1 ; minx - - jmp addysp1 ; Drop params, return - -; -------------------------------------------------------------------------- -; -; void __fastcall__ mouse_pos (struct mouse_pos* pos); -; /* Return the current mouse position */ -; - -_mouse_pos: - sta ptr1 - stx ptr1+1 ; Remember the argument pointer - - ldy #0 ; Structure offset - - php - sei ; Disable interrupts - - lda mouseXPos ; Transfer the position - sta (ptr1),y - lda mouseXPos+1 - iny - sta (ptr1),y - lda mouseYPos - iny - sta (ptr1),y - lda #$00 - iny - sta (ptr1),y - - plp ; Reenable interrupts - rts ; Done - -; -------------------------------------------------------------------------- -; -; void __fastcall__ mouse_info (struct mouse_info* info); -; /* Return the state of the mouse buttons and the position of the mouse */ -; - -_mouse_info: - -; We're cheating here to keep the code smaller: The first fields of the -; mouse_info struct are identical to the mouse_pos struct, so we will just -; call _mouse_pos to initialize the struct pointer and fill the position -; fields. - - jsr _mouse_pos - -; Fill in the button state - - jsr _mouse_buttons ; Will not touch ptr1 - iny - sta (ptr1),y - - rts - -; -------------------------------------------------------------------------- -; -; void __fastcall__ mouse_move (int x, int y); -; - -_mouse_move: - jsr popsreg ; Get X - php - sei ; Disable interrupts - sta mouseYPos - lda sreg - ldx sreg+1 - sta mouseXPos - stx mouseXPos+1 - plp ; Enable interrupts - rts - -; -------------------------------------------------------------------------- -; -; unsigned char mouse_buttons (void); -; - -_mouse_buttons: - ldx #0 - lda pressFlag - and #SET_MOUSE - lsr - rts - diff --git a/libsrc/geos-cbm/mousesprite/mouseoff.s b/libsrc/geos-cbm/mousesprite/mouseoff.s deleted file mode 100644 index 84f34701d..000000000 --- a/libsrc/geos-cbm/mousesprite/mouseoff.s +++ /dev/null @@ -1,13 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; void MouseOff (void); - - .export _MouseOff - - .include "jumptab.inc" - -_MouseOff = MouseOff \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/mouseup.s b/libsrc/geos-cbm/mousesprite/mouseup.s deleted file mode 100644 index 08f831ce4..000000000 --- a/libsrc/geos-cbm/mousesprite/mouseup.s +++ /dev/null @@ -1,13 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; void MouseUp (void); - - .export _MouseUp - - .include "jumptab.inc" - -_MouseUp = MouseUp \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/possprite.s b/libsrc/geos-cbm/mousesprite/possprite.s deleted file mode 100644 index 1ffda37b4..000000000 --- a/libsrc/geos-cbm/mousesprite/possprite.s +++ /dev/null @@ -1,32 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; -; void PosSprite (char spritenum, struct pixel *position ); -; - - .importzp ptr4 - .import popa - .export _PosSprite - - .include "jumptab.inc" - .include "geossym.inc" - -_PosSprite: - sta ptr4 - stx ptr4+1 - ldy #0 - lda (ptr4),y - sta r4L - iny - lda (ptr4),y - sta r4H - iny - lda (ptr4),y - sta r5L - jsr popa - sta r3L - jmp PosSprite \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/promptoff.s b/libsrc/geos-cbm/mousesprite/promptoff.s deleted file mode 100644 index 11088cb59..000000000 --- a/libsrc/geos-cbm/mousesprite/promptoff.s +++ /dev/null @@ -1,13 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 21.12.99 - -; void PromptOff (void); - - .export _PromptOff - - .include "jumptab.inc" - -_PromptOff = PromptOff \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/prompton.s b/libsrc/geos-cbm/mousesprite/prompton.s deleted file mode 100644 index 3de1b01f4..000000000 --- a/libsrc/geos-cbm/mousesprite/prompton.s +++ /dev/null @@ -1,24 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 21.12.99 - -; void PromptOn (struct pixel *); - - .importzp ptr4 - .export _PromptOn - - .include "jumptab.inc" - .include "geossym.inc" - -_PromptOn: - sta ptr4 - stx ptr4+1 - ldy #0 -promptLp: lda (ptr4),y - sta stringX,y - iny - cpy #3 - bne promptLp - jmp PromptOn \ No newline at end of file diff --git a/libsrc/geos-cbm/mousesprite/startmousemode.s b/libsrc/geos-cbm/mousesprite/startmousemode.s deleted file mode 100644 index cefde425e..000000000 --- a/libsrc/geos-cbm/mousesprite/startmousemode.s +++ /dev/null @@ -1,15 +0,0 @@ - -; -; Maciej 'YTM/Alliance' Witkowiak -; -; 30.10.99 - -; void StartMouseMode (void); - - .export _StartMouseMode - - .include "jumptab.inc" - -_StartMouseMode: - clc - jmp StartMouseMode \ No newline at end of file diff --git a/libsrc/geos-common/Makefile b/libsrc/geos-common/Makefile index be86b288f..7751ec811 100644 --- a/libsrc/geos-common/Makefile +++ b/libsrc/geos-common/Makefile @@ -33,7 +33,8 @@ DIRS = dlgbox \ file \ graph \ memory \ - menuicon + menuicon \ + mousesprite #-------------------------------------------------------------------------- # Directives diff --git a/libsrc/geos-common/mousesprite/Makefile b/libsrc/geos-common/mousesprite/Makefile new file mode 100644 index 000000000..f76ea33be --- /dev/null +++ b/libsrc/geos-common/mousesprite/Makefile @@ -0,0 +1,21 @@ +# +# makefile for CC65 runtime library +# + +#-------------------------------------------------------------------------- +# Object files + +S_OBJS += startmousemode.o \ + clearmousemode.o \ + mouseup.o \ + mouseoff.o \ + drawsprite.o \ + possprite.o \ + enablsprite.o \ + disablsprite.o \ + ismseinregion.o \ + inittextprompt.o \ + promptoff.o \ + prompton.o \ + getnextchar.o \ + mouse.o diff --git a/libsrc/geos-common/mousesprite/clearmousemode.s b/libsrc/geos-common/mousesprite/clearmousemode.s new file mode 100644 index 000000000..17186cc9d --- /dev/null +++ b/libsrc/geos-common/mousesprite/clearmousemode.s @@ -0,0 +1,13 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; void ClearMouseMode (void); + + .export _ClearMouseMode + + .include "jumptab.inc" + +_ClearMouseMode = ClearMouseMode \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/disablsprite.s b/libsrc/geos-common/mousesprite/disablsprite.s new file mode 100644 index 000000000..37625d361 --- /dev/null +++ b/libsrc/geos-common/mousesprite/disablsprite.s @@ -0,0 +1,16 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; void DisablSprite (char spritenum); + + .export _DisablSprite + + .include "jumptab.inc" + .include "geossym.inc" + +_DisablSprite: + sta r3L + jmp DisablSprite \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/drawsprite.s b/libsrc/geos-common/mousesprite/drawsprite.s new file mode 100644 index 000000000..c5a071ebf --- /dev/null +++ b/libsrc/geos-common/mousesprite/drawsprite.s @@ -0,0 +1,23 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; +; void DrawSprite (char spritenum, char *tab63 ); +; + + .import popa + .export _DrawSprite + + .include "jumptab.inc" + .include "geossym.inc" + +_DrawSprite: + + sta r4L + stx r4H + jsr popa + sta r3L + jmp DrawSprite \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/enablsprite.s b/libsrc/geos-common/mousesprite/enablsprite.s new file mode 100644 index 000000000..7c8328421 --- /dev/null +++ b/libsrc/geos-common/mousesprite/enablsprite.s @@ -0,0 +1,16 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; void EnablSprite (char spritenum); + + .export _EnablSprite + + .include "jumptab.inc" + .include "geossym.inc" + +_EnablSprite: + sta r3L + jmp EnablSprite \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/getnextchar.s b/libsrc/geos-common/mousesprite/getnextchar.s new file mode 100644 index 000000000..0ddbf1e99 --- /dev/null +++ b/libsrc/geos-common/mousesprite/getnextchar.s @@ -0,0 +1,18 @@ + +; +; Maciej 'YTM/Elysium' Witkowiak +; +; 21.12.1999, 2.1.2003 + +; char GetNextChar (void); +; note that if it returns 0 (FALSE) then no characters are available + + .export _GetNextChar + + .include "jumptab.inc" + +_GetNextChar: + jsr GetNextChar + ldx #0 + tay ; preserve Z flag + rts diff --git a/libsrc/geos-common/mousesprite/inittextprompt.s b/libsrc/geos-common/mousesprite/inittextprompt.s new file mode 100644 index 000000000..21c213544 --- /dev/null +++ b/libsrc/geos-common/mousesprite/inittextprompt.s @@ -0,0 +1,13 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 21.12.99 + +; void InitTextPrompt (char height); + + .export _InitTextPrompt + + .include "jumptab.inc" + +_InitTextPrompt = InitTextPrompt \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/ismseinregion.s b/libsrc/geos-common/mousesprite/ismseinregion.s new file mode 100644 index 000000000..554ca58ef --- /dev/null +++ b/libsrc/geos-common/mousesprite/ismseinregion.s @@ -0,0 +1,19 @@ + +; +; Maciej 'YTM/Elysium' Witkowiak +; +; 21.12.1999, 2.1.2003 + +; char IsMseInRegion (struct window *mywindow); + + .import _InitDrawWindow + + .export _IsMseInRegion + + .include "jumptab.inc" + +_IsMseInRegion: + jsr _InitDrawWindow + jsr IsMseInRegion + ldx #0 + rts diff --git a/libsrc/geos-common/mousesprite/mouse.s b/libsrc/geos-common/mousesprite/mouse.s new file mode 100644 index 000000000..1889c4f95 --- /dev/null +++ b/libsrc/geos-common/mousesprite/mouse.s @@ -0,0 +1,194 @@ +; +; Maciej 'YTM/Elysium' Witkowiak +; +; 2.7.2001 +; +; Wrapper for GEOS standard input device interface +; + + .export _mouse_init, _mouse_done + .export _mouse_hide, _mouse_show + .export _mouse_box + .export _mouse_pos, _mouse_info + .export _mouse_move, _mouse_buttons + + .import popsreg, addysp1 + .importzp sp, sreg, ptr1 + + .include "const.inc" + .include "jumptab.inc" + .include "geossym.inc" + + +.code + +; -------------------------------------------------------------------------- +; +; unsigned char __fastcall__ mouse_init (unsigned char type); +; + +_mouse_init: + jsr StartMouseMode + jsr MouseOff + + lda #0 + sta mouseTop + sta mouseLeft + sta mouseLeft+1 +.ifdef __GEOS_CBM__ + lda #199 + sta mouseBottom + lda graphMode + bpl _mse_screen320 + + lda #<639 ; 80 columns on C128 + ldx #>639 + bne _mse_storex +_mse_screen320: + lda #<319 ; 40 columns on C64/C128 + ldx #>319 +_mse_storex: +.else + lda #191 + sta mouseBottom + lda #<559 + ldx #>559 +.endif + sta mouseRight + stx mouseRight+1 +_mse_initend: + lda #0 + tax +; -------------------------------------------------------------------------- +; +; void mouse_done (void); +; +_mouse_done: + rts + +; -------------------------------------------------------------------------- +; +; void mouse_hide (void); +; + +_mouse_hide = MouseOff + +; -------------------------------------------------------------------------- +; +; void mouse_show (void); +; + +_mouse_show = MouseUp + +; -------------------------------------------------------------------------- +; +; void __fastcall__ mouse_box (int minx, int miny, int maxx, int maxy); +; + +_mouse_box: + ldy #0 ; Stack offset + + sta mouseBottom + + lda (sp),y + sta mouseRight + iny + lda (sp),y + sta mouseRight+1 ; maxx + + iny + lda (sp),y + sta mouseTop + iny ; Skip high byte + + iny + lda (sp),y + sta mouseLeft + iny + lda (sp),y + sta mouseLeft+1 ; minx + + jmp addysp1 ; Drop params, return + +; -------------------------------------------------------------------------- +; +; void __fastcall__ mouse_pos (struct mouse_pos* pos); +; /* Return the current mouse position */ +; + +_mouse_pos: + sta ptr1 + stx ptr1+1 ; Remember the argument pointer + + ldy #0 ; Structure offset + + php + sei ; Disable interrupts + + lda mouseXPos ; Transfer the position + sta (ptr1),y + lda mouseXPos+1 + iny + sta (ptr1),y + lda mouseYPos + iny + sta (ptr1),y + lda #$00 + iny + sta (ptr1),y + + plp ; Reenable interrupts + rts ; Done + +; -------------------------------------------------------------------------- +; +; void __fastcall__ mouse_info (struct mouse_info* info); +; /* Return the state of the mouse buttons and the position of the mouse */ +; + +_mouse_info: + +; We're cheating here to keep the code smaller: The first fields of the +; mouse_info struct are identical to the mouse_pos struct, so we will just +; call _mouse_pos to initialize the struct pointer and fill the position +; fields. + + jsr _mouse_pos + +; Fill in the button state + + jsr _mouse_buttons ; Will not touch ptr1 + iny + sta (ptr1),y + + rts + +; -------------------------------------------------------------------------- +; +; void __fastcall__ mouse_move (int x, int y); +; + +_mouse_move: + jsr popsreg ; Get X + php + sei ; Disable interrupts + sta mouseYPos + lda sreg + ldx sreg+1 + sta mouseXPos + stx mouseXPos+1 + plp ; Enable interrupts + rts + +; -------------------------------------------------------------------------- +; +; unsigned char mouse_buttons (void); +; + +_mouse_buttons: + ldx #0 + lda pressFlag + and #SET_MOUSE + lsr + rts + diff --git a/libsrc/geos-common/mousesprite/mouseoff.s b/libsrc/geos-common/mousesprite/mouseoff.s new file mode 100644 index 000000000..84f34701d --- /dev/null +++ b/libsrc/geos-common/mousesprite/mouseoff.s @@ -0,0 +1,13 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; void MouseOff (void); + + .export _MouseOff + + .include "jumptab.inc" + +_MouseOff = MouseOff \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/mouseup.s b/libsrc/geos-common/mousesprite/mouseup.s new file mode 100644 index 000000000..08f831ce4 --- /dev/null +++ b/libsrc/geos-common/mousesprite/mouseup.s @@ -0,0 +1,13 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; void MouseUp (void); + + .export _MouseUp + + .include "jumptab.inc" + +_MouseUp = MouseUp \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/possprite.s b/libsrc/geos-common/mousesprite/possprite.s new file mode 100644 index 000000000..1ffda37b4 --- /dev/null +++ b/libsrc/geos-common/mousesprite/possprite.s @@ -0,0 +1,32 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; +; void PosSprite (char spritenum, struct pixel *position ); +; + + .importzp ptr4 + .import popa + .export _PosSprite + + .include "jumptab.inc" + .include "geossym.inc" + +_PosSprite: + sta ptr4 + stx ptr4+1 + ldy #0 + lda (ptr4),y + sta r4L + iny + lda (ptr4),y + sta r4H + iny + lda (ptr4),y + sta r5L + jsr popa + sta r3L + jmp PosSprite \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/promptoff.s b/libsrc/geos-common/mousesprite/promptoff.s new file mode 100644 index 000000000..11088cb59 --- /dev/null +++ b/libsrc/geos-common/mousesprite/promptoff.s @@ -0,0 +1,13 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 21.12.99 + +; void PromptOff (void); + + .export _PromptOff + + .include "jumptab.inc" + +_PromptOff = PromptOff \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/prompton.s b/libsrc/geos-common/mousesprite/prompton.s new file mode 100644 index 000000000..3de1b01f4 --- /dev/null +++ b/libsrc/geos-common/mousesprite/prompton.s @@ -0,0 +1,24 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 21.12.99 + +; void PromptOn (struct pixel *); + + .importzp ptr4 + .export _PromptOn + + .include "jumptab.inc" + .include "geossym.inc" + +_PromptOn: + sta ptr4 + stx ptr4+1 + ldy #0 +promptLp: lda (ptr4),y + sta stringX,y + iny + cpy #3 + bne promptLp + jmp PromptOn \ No newline at end of file diff --git a/libsrc/geos-common/mousesprite/startmousemode.s b/libsrc/geos-common/mousesprite/startmousemode.s new file mode 100644 index 000000000..cefde425e --- /dev/null +++ b/libsrc/geos-common/mousesprite/startmousemode.s @@ -0,0 +1,15 @@ + +; +; Maciej 'YTM/Alliance' Witkowiak +; +; 30.10.99 + +; void StartMouseMode (void); + + .export _StartMouseMode + + .include "jumptab.inc" + +_StartMouseMode: + clc + jmp StartMouseMode \ No newline at end of file