📄 mouse.txt
字号:
DIM SHARED mouser$, JoyXPos, JoyYPos, but1%, but2%, but3%, but4%,
MouseLeftButton, MouseRightButton, MouseXPos, MouseYPos, AX%, bx%, cx%, dx%
SCREEN 12
Mouse 0
CLS
DO
'Mouse Routines
Mouse 3
LOCATE 2, 1
PRINT "Mouse "
PRINT " Left Button :"; MouseLeftButton
PRINT " Right Button:"; MouseRightButton
PRINT " X Position:"; MouseXPos
PRINT " Y Position:"; MouseYPos
PRINT
PRINT
'Joystick Routines (Beware, they slow your program down alot!)
' (Plus a calibration program needs to be build)
' (I don't have enough time to do it!)
STICKS
PRINT "Joystick "
PRINT " Button 1:"; but1%
PRINT " Button 2:"; but2%
PRINT " Button 3:"; but3%
PRINT " Button 4:"; but4%
PRINT " X Position:"; JoyXPos
PRINT " Y Position:"; JoyYPos
LOOP
DATA 55,89,E5,8B,5E,0C,8B,07,50,8B,5E,0A,8B,07,50,8B
DATA 5E,08,8B,0F,8B,5E,06,8B,17,5B,58,1E,07,CD,33,53
DATA 8B,5E,0C,89,07,58,8B,5E,0A,89,07,8B,5E,08,89,0F
DATA 8B,5E,06,89,17,5D,CA,08,00
SUB Mouse (which)
'0 = Mouse Init
'1 = Mouse Driver
'2 = Mouse Put
'3 = Mouse Status
'4 = Mouse Hide
'5 = Mouse Show
IF which = 0 THEN
mouser$ = SPACE$(57)
FOR I% = 1 TO 57
READ A$
H$ = CHR$(VAL("&H" + A$))
MID$(mouser$, I%, 1) = H$
NEXT I%
AX% = 0
bx% = 0
cx% = 0
dx% = 0
Mouse 1
MouseInit% = AX%
Mouse 5
END IF
IF which = 1 THEN
DEF SEG = VARSEG(mouser$)
mouser% = SADD(mouser$)
CALL Absolute(AX%, bx%, cx%, dx%, mouser%)
END IF
IF which = 2 THEN
AX% = 4
cx% = X%
dx% = Y%
bx% = 0
Mouse 1
END IF
IF which = 3 THEN
AX% = 3
Mouse 1
MouseLeftButton = ((bx% AND 1) <> 0)
MouseRightButton = ((bx% AND 2) <> 0)
MouseXPos = cx%
MouseYPos = dx%
END IF
IF which = 4 THEN
AX% = 2
bx% = 0
cx% = 0
dx% = 0
Mouse 1
END IF
IF which = 5 THEN
AX% = 1
bx% = 0
cx% = 0
dx% = 0
Mouse 1
END IF
END SUB
SUB STICKS
JoyXPos = STICK(0)
JoyYPos = STICK(1)
but1% = STRIG(0)
but2% = STRIG(2)
but3% = STRIG(4)
but4% = STRIG(6)
END SUB
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -