home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
canada-remote-systems
/
geos
/
utils
/
pntr128.lbr
/
POINTER.SRC.seq
(
.txt
)
< prev
next >
Wrap
GEOS ConVerT
|
2019-04-13
|
4KB
|
118 lines
Pointer.src
SEQ formatted GEOS file V1.0
StarNX-1000C
OP V2.0 or highernager
GEOPAINT
BLASTER'S CONVERTER V2.5
GEOASSEMBLER
GEOLINKER
Write Image V2.1
geoWrite V2.1
; *** Pointer128 Main Program: This program will change the defualt GEOS 128 80 column pointer
; *** to the one in this program.
.if Pass1 ; Only need to include these files
; during assembler's first pass.
.include geosSym ; Get GEOS definitions.
.include geosMac ; Get GEOS macro definitions.
.endif
SetMsePic == $C2DA ; Set a "new" mouse picture.
KerPntrData == $C844 ; Location in kernal of pointer data.
MoveBData == $C2E3 ; Move data between banks.
.psect ; Program code starts here (GeoLinker will set
; the start address: $0400)
; *** This will be the start of the program main code.
@PRGStart
: ; This label will set the start address.
jsr NewDisk ; A bug with older versions of GEOS made
; necessary to call
NewDisk
to stop the
; the disk motor if the application does
; access the disk. From
Geos P.R.G.
; *** Move data for the new pointer over the old data in the kernal. Note: Old data is destroyed.
LoadW r0,PointerData ; Source address of data to move.
LoadW r1,KerPntrData ; Destination address of data to move.
LoadW r2,32 ; Number of bytes to move. Only 32.
LoadB r3L,1 ; Bank to move data FROM. Bank 1
LoadB r3H,0 ; Bank to move data TO. Bank 0
jsr MoveBData
LoadW r0,0 ; Set r0 to activate the "new" system
jsr SetMsePic ; pointer.
jmp EnterDeskTop ; Return to the deskTop.
; *** This is the data for the "new" pointe
; *** This is the data for the "new" pointer for the 80 column screen.
@PointerData
.byte
%00111111, %11111111
; Data for the "mask" of the pointer.
.byte
%01011111, %11111111
; 0 bits clear corresponding pixels.
.byte
%01101111, %11111111
; 1 bits do not clear pixels.
.byte
%01111011, %11111111
.byte
%01111101, %11111111
.byte
%01111110, %11111111
.byte
%00011101, %11111111
.byte
%11100011, %11111111
.byte
%00000000, %00000000
; Data for the pointer. (16 x 8 pixels)
.byte
%01000000, %00000000
; 0 bits do not set pixels.
.byte
%01100000, %00000000
; 1 bits set corresponding pixels.
.byte
%01111000, %00000000
.byte
%01111100, %00000000
.byte
%01111110, %00000000
.byte
%00011100, %00000000
.byte
%00000000, %00000000
@Credits
.byte "
@This program was written by James W. Pyle III
.byte "
@ - JamesP100 on Q-Link.
@PRGEnd
: .end ; End of program.
@Note
: The binary data above uses the Commdore 10 point font to keep the characters alined.
; I would like to thank the following:
;
@GEOREP JIM
for his help with this program
;
@Berkeley Softworks
for creating
@GEOS 64
and
@GEOS 128,
; QuantumLink
for providing
@Commdore
user's with the
@GEOS ARENA,
and
@Commdore
for creating the worlds best 8 bit computer.
; If there are any suggestions on how to inprove this program please send E-MAIL on Q-Link to
@JamesP100
. Please fill free to modify this program as you wish, but do not remove my name
; or any of the comments above. If you modify it, upload it to Q-Link with the modified source
; code so that other users may see the changes.
; Thank you,
; James W. Pyle III