mirror of
https://github.com/callapple/Twilight_II.git
synced 2025-04-12 03:37:14 +00:00
Add files via upload
This commit is contained in:
parent
6a1c673f1d
commit
58c81c2673
15
source/twilight/patch/makefile
Normal file
15
source/twilight/patch/makefile
Normal file
@ -0,0 +1,15 @@
|
||||
|
||||
# Sound Patcher UNIX Makefile
|
||||
# by Jim Maricondo
|
||||
# v1.0 - 1/9/93 - coded (jG?!!)
|
||||
|
||||
patch.d: patch.asm
|
||||
asml patch.asm keep=patch.d
|
||||
|
||||
patch.r: patch.rez
|
||||
compile patch.rez keep=patch.r
|
||||
|
||||
patch: patch.d patch.r
|
||||
duplicate -d patch.d patch
|
||||
duplicate -r patch.r patch
|
||||
filetype patch exe
|
1
source/twilight/patch/old/SHELL.ASM
Normal file
1
source/twilight/patch/old/SHELL.ASM
Normal file
File diff suppressed because one or more lines are too long
1
source/twilight/patch/old/SHELL.MACROS
Normal file
1
source/twilight/patch/old/SHELL.MACROS
Normal file
@ -0,0 +1 @@
|
||||
MACRO
&lab _DrawControls
&lab ldx #$1010
jsl $E10000
MEND
MACRO
&lab _FixAppleMenu
&lab ldx #$1E05
jsl $E10000
MEND
MACRO
&lab _TLStartUp
&lab ldx #$0201
jsl $E10000
MEND
MACRO
&lab _TLShutDown
&lab ldx #$0301
jsl $E10000
MEND
MACRO
&lab _StartUpTools
&lab ldx #$1801
jsl $E10000
MEND
MACRO
&lab _ShutDownTools
&lab ldx #$1901
jsl $E10000
MEND
MACRO
&lab _MMStartUp
&lab ldx #$0202
jsl $E10000
MEND
MACRO
&lab _MMShutDown
&lab ldx #$0302
jsl $E10000
MEND
MACRO
&lab _DisposeHandle
&lab ldx #$1002
jsl $E10000
MEND
MACRO
&lab _NewHandle
&lab ldx #$0902
jsl $E10000
MEND
MACRO
&lab _DisableMItem
&lab ldx #$310F
jsl $E10000
MEND
MACRO
&lab _DrawMenuBar
&lab ldx #$2A0F
jsl $E10000
MEND
MACRO
&lab _EnableMItem
&lab ldx #$300F
jsl $E10000
MEND
MACRO
&lab _FixMenuBar
&lab ldx #$130F
jsl $E10000
MEND
MACRO
&lab _HiliteMenu
&lab ldx #$2C0F
jsl $E10000
MEND
MACRO
&lab _SetMenuBar
&lab ldx #$390F
jsl $E10000
MEND
MACRO
&lab _SetMenuFlag
&lab ldx #$1F0F
jsl $E10000
MEND
MACRO
&lab _SetSysBar
&lab ldx #$120F
jsl $E10000
MEND
MACRO
&lab _NewMenuBar2
&lab ldx #$430F
jsl $E10000
MEND
MACRO
&lab _QUIT ¶ms
&lab jsl $E100A8
dc i2"$29"
dc i4"¶ms"
MEND
MACRO
&lab _InitCursor
&lab ldx #$CA04
jsl $E10000
MEND
MACRO
&lab _SFGetFile2
&lab ldx #$0E17
jsl $E10000
MEND
MACRO
&lab _SFPutFile2
&lab ldx #$0F17
jsl $E10000
MEND
MACRO
&lab _AlertWindow
&lab ldx #$590E
jsl $E10000
MEND
MACRO
&lab _CloseWindow
&lab ldx #$0B0E
jsl $E10000
MEND
MACRO
&lab _FrontWindow
&lab ldx #$150E
jsl $E10000
MEND
MACRO
&lab _SetWTitle
&lab ldx #$0D0E
jsl $E10000
MEND
MACRO
&lab _TaskMaster
&lab ldx #$1D0E
jsl $E10000
MEND
MACRO
&lab _NewWindow2
&lab ldx #$610E
jsl $E10000
MEND
MACRO
&lab _TESetText
&lab ldx #$0B22
jsl $E10000
MEND
MACRO
&lab _CloseGS ¶ms
&lab jsl $E100A8
dc i2"$2014"
dc i4"¶ms"
MEND
MACRO
&lab _CreateGS ¶ms
&lab jsl $E100A8
dc i2"$2001"
dc i4"¶ms"
MEND
MACRO
&lab _DestroyGS ¶ms
&lab jsl $E100A8
dc i2"$2002"
dc i4"¶ms"
MEND
MACRO
&lab _OpenGS ¶ms
&lab jsl $E100A8
dc i2"$2010"
dc i4"¶ms"
MEND
MACRO
&lab _ReadGS ¶ms
&lab jsl $E100A8
dc i2"$2012"
dc i4"¶ms"
MEND
MACRO
&lab pulllong &addr1,&addr2
&lab ANOP
AIF C:&addr1=0,.a
AIF C:&addr2=0,.b
LCLC &C
&C AMID &addr1,1,1
AIF "&C"="[",.zeropage
pullword &addr1
sta &addr2
pullword &addr1+2
sta &addr2+2
MEXIT
.a
pullword
pullword
MEXIT
.b
pullword &addr1
pullword &addr1+2
MEXIT
.zeropage
ldy #&addr2
pullword &addr1,y
ldy #&addr2+2
pullword &addr1,y
MEND
MACRO
&lab pullword &SYSOPR
&lab ANOP
pla
AIF C:&SYSOPR=0,.end
sta &SYSOPR
.end
MEND
MACRO
&lab pushlong &addr,&offset
&lab ANOP
LCLC &C
LCLC &REST
&C AMID &addr,1,1
AIF "&C"="#",.immediate
AIF "&C"="[",.zeropage
AIF C:&offset=0,.nooffset
AIF "&offset"="s",.stack
pushword &addr+2,&offset
pushword &addr,&offset
MEXIT
.nooffset
pushword &addr+2
pushword &addr
MEXIT
.immediate
&REST AMID &addr,2,L:&addr-1
dc I1'$F4',I2'(&REST)|-16'
dc I1'$F4',I2'&REST'
MEXIT
.stack
pushword &addr+2,s
pushword &addr+2,s
MEXIT
.zeropage
ldy #&offset+2
pushword &addr,y
ldy #&offset
pushword &addr,y
MEND
MACRO
&lab pushword &SYSOPR
&lab ANOP
AIF C:&SYSOPR=0,.b
LCLC &C
&C AMID "&SYSOPR",1,1
AIF ("&C"="#").AND.(S:LONGA),.immediate
lda &SYSOPR
pha
MEXIT
.b
pha
MEXIT
.immediate
LCLC &REST
LCLA &BL
&BL ASEARCH "&SYSOPR"," ",1
AIF &BL>0,.a
&BL SETA L:&SYSOPR+1
.a
&REST AMID "&SYSOPR",2,&BL-2
dc I1'$F4',I2'&REST'
MEND
MACRO
&lab str &string
&lab dc i1'L:&string',C'&string'
MEND
MACRO
&lab GSstr &string
&lab dc i'L:&string',C'&string'
MEND
MACRO
&lab _GetHandleSize
&lab ldx #$1802
jsl $E10000
MEND
MACRO
&lab longm
&lab ANOP
rep #%00100000
longa on
MEND
MACRO
&lab shortm
&lab ANOP
sep #%00100000
longa off
MEND
|
1
source/twilight/patch/old/Shell.doc
Normal file
1
source/twilight/patch/old/Shell.doc
Normal file
@ -0,0 +1 @@
|
||||
I wrote this in about 5 hours today, so there are most likely some lingering bugs. If you find any, please send EMail to (America Online) JonahS or (GEnie) J.STICH1. I've included everything you need to recompile the program. In this archive you should have gotten:
Shell.doc (This file)
Shell.asm (The APW assembly source for the program)
Shell.equ (The Genesys created equates for the Assembly source)
Shell.r320.rez (The rez source for the 320 mode resource fork)
Shell.r640.rez (The rez source for the 640 mode resource fork)
Shell.macros (The macro file for the assembly source)
Shell320.sys16 (The 320 mode version of the shell)
Shell640.sys16 (The 640 mode version of the shell)
To change the resource fork, you'll need either Rez or a resource editing tool (Genesys comes to mind....)
To rebuild the program, you should do the following:
compile shell.asm
compile shell.rxxx.rez keep=shell.rfork
linkiigs shell.root shell.a -o shell.dfork
duplicate -d shell.dfork shell.sys16
duplicate -r shell.rfork shell.sys16
filetype shell.sys16 s16
That SHOULD do it. EMail me if you have problems, and I'll try to straighten you out. Hope you like the program and find it to be of some use. Enjoy!
|
1
source/twilight/patch/old/patch.asm.c
Normal file
1
source/twilight/patch/old/patch.asm.c
Normal file
File diff suppressed because one or more lines are too long
1
source/twilight/patch/old/patch.asm.d
Normal file
1
source/twilight/patch/old/patch.asm.d
Normal file
File diff suppressed because one or more lines are too long
1
source/twilight/patch/old/patch.r.src
Normal file
1
source/twilight/patch/old/patch.r.src
Normal file
File diff suppressed because one or more lines are too long
1
source/twilight/patch/old/shell.r320.rez
Normal file
1
source/twilight/patch/old/shell.r320.rez
Normal file
File diff suppressed because one or more lines are too long
BIN
source/twilight/patch/old/shell.sys16
Normal file
BIN
source/twilight/patch/old/shell.sys16
Normal file
Binary file not shown.
736
source/twilight/patch/patch.asm
Normal file
736
source/twilight/patch/patch.asm
Normal file
@ -0,0 +1,736 @@
|
||||
|
||||
KEEP patch.d
|
||||
mcopy patch.mac
|
||||
copy patch.equ
|
||||
copy 13:ainclude:e16.memory
|
||||
copy 13:ainclude:e16.types
|
||||
copy 13:ainclude:e16.window
|
||||
copy 13:ainclude:e16.event
|
||||
copy 13:ainclude:e16.resources
|
||||
copy 13:ainclude:e16.misctool
|
||||
copy 13:ainclude:e16.gsos
|
||||
copy 22:dsdb.equ
|
||||
*-----------------------------------------------------------------------------*
|
||||
TRUE gequ 1
|
||||
FALSE gequ 0
|
||||
|
||||
TempHandle gequ <0
|
||||
TempPtr gequ TempHandle+4
|
||||
TempDP gequ TempPtr+4
|
||||
|
||||
MaxFSTLen gequ 32 ; Maximum filename length supported
|
||||
*-----------------------------------------------------------------------------*
|
||||
Patcher Start
|
||||
kind $1000
|
||||
Using GlobalDATA
|
||||
debug 'Patcher'
|
||||
|
||||
copy 22:dsdb.asm
|
||||
|
||||
phk
|
||||
plb
|
||||
jsr Startup ;Set things up
|
||||
jsr MainEvent ;do the main program
|
||||
jsr Shutdown ;then shut them down again
|
||||
|
||||
_QUIT QuitParms ;And quit
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
GlobalDATA Data
|
||||
|
||||
QuitParms anop
|
||||
dc i4'0'
|
||||
dc i'0'
|
||||
|
||||
MasterID ds 2 ;UserID
|
||||
MyID ds 2 ;auxiliary UserID
|
||||
QuitFlag dc i'0'
|
||||
EnableFlag dc i'$FFFF' ;wether the edit menu is enabled
|
||||
|
||||
SSRecRefRet ds 4 ;returned by StartUpTools
|
||||
|
||||
NewPtr ds 4 ;The pointer to window's grafport
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
Startup Start
|
||||
Using GlobalDATA
|
||||
Using FileDATA
|
||||
debug 'Startup'
|
||||
|
||||
~TLStartUp ;Start the Tool Locator
|
||||
|
||||
~MMStartUp
|
||||
PullWord MasterID
|
||||
ora #$0100 ;And create an aux ID
|
||||
sta MyID ; for getting memory with
|
||||
|
||||
~StartUpTools MasterID,#refIsResource,#toolTable
|
||||
PullLong SSRecRefRet
|
||||
|
||||
jsr SetUpMenus ;And draw the menu
|
||||
|
||||
~InitCursor ;Show the arrow cursor
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
SetUpMenus Start
|
||||
Using GlobalDATA
|
||||
debug 'SetUpMenus'
|
||||
|
||||
~NewMenuBar2 #refIsResource,#menuBar,#0
|
||||
_SetSysBar ; and make it the current system bar
|
||||
|
||||
~SetMenuBar #0
|
||||
|
||||
~FixAppleMenu #1 ; install desk accs
|
||||
|
||||
~FixMenuBar ; calculate menu sizes
|
||||
pla
|
||||
|
||||
~DrawMenuBar ;And draw the bar
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
MenuDATA Data
|
||||
debug 'MenuDATA'
|
||||
|
||||
MenuHandlers anop
|
||||
dc i'doClose' ;Close: 255
|
||||
dc i'doAbout' ;About: 256
|
||||
dc i'doQuit' ;Quit: 257
|
||||
dc i'doPatch' ;Patch: 258
|
||||
dc i'doHelp' ;Help: 259
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
MainEvent Start
|
||||
Using TaskDATA
|
||||
Using GlobalDATA
|
||||
debug 'MainEvent'
|
||||
|
||||
jsr doPatch
|
||||
|
||||
again anop
|
||||
~TaskMaster #$FFFF,#TaskRecord
|
||||
pla
|
||||
asl a
|
||||
tax
|
||||
jsr (TaskHandlers,x)
|
||||
lda QuitFlag
|
||||
beq again
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
TaskDATA Data
|
||||
|
||||
TaskRecord anop
|
||||
What ds 2
|
||||
Message ds 4
|
||||
When ds 4
|
||||
Where ds 4
|
||||
Modifiers ds 2
|
||||
TData ds 4
|
||||
dc i4'$001FFFFF'
|
||||
LastClickTick ds 4
|
||||
ClickCount ds 2
|
||||
TaskDATA2 ds 4
|
||||
TaskDATA3 ds 4
|
||||
TaskDATA4 ds 4
|
||||
LastClickPoint ds 4
|
||||
|
||||
TaskHandlers anop
|
||||
dc i'doNull' ;NullEvt
|
||||
dc i'Ignore' ;MouseDownEvt
|
||||
dc i'Ignore' ;MouseUpEvt
|
||||
dc i'Ignore' ;KeyDownEvt
|
||||
dc i'Ignore' ;Undefined
|
||||
dc i'Ignore' ;AutoKeyEvt
|
||||
dc i'Ignore' ;UpdateEvt
|
||||
dc i'Ignore' ;Undefined
|
||||
dc i'Ignore' ;ActivateEvt
|
||||
dc i'Ignore' ;SwitchEvt
|
||||
dc i'Ignore' ;DeskAccEvt
|
||||
dc i'Ignore' ;DriverEvt
|
||||
dc i'Ignore' ;App1Evt
|
||||
dc i'Ignore' ;App2Evt
|
||||
dc i'Ignore' ;App3Evt
|
||||
dc i'Ignore' ;App4Evt
|
||||
dc i'Ignore' ;wInDesk
|
||||
dc i'doMenus' ;wInMenuBar
|
||||
dc i'Ignore' ;wClickCalled
|
||||
dc i'Ignore' ;wInContent
|
||||
dc i'Ignore' ;wInDrag
|
||||
dc i'Ignore' ;wInGrow
|
||||
dc i'doClose' ;wInGoAway
|
||||
dc i'Ignore' ;wInZoom
|
||||
dc i'Ignore' ;wInInfo
|
||||
dc i'doMenus' ;wInSpecial
|
||||
dc i'Ignore' ;wInDeskItem
|
||||
dc i'Ignore' ;wInFrame
|
||||
dc i'Ignore' ;wInactMenu
|
||||
dc i'Ignore' ;wClosedNDA
|
||||
dc i'Ignore' ;wCalledSysEdit
|
||||
dc i'Ignore' ;wTrackZoom
|
||||
dc i'Ignore' ;wHitFrame
|
||||
dc i'Ignore' ;wInControl
|
||||
dc i'Ignore' ;wInControlMenu
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
doNull Start
|
||||
Using GlobalDATA
|
||||
|
||||
~FrontWindow
|
||||
pla
|
||||
ora 1,s
|
||||
plx
|
||||
cmp #0
|
||||
bne enableClose
|
||||
|
||||
lda EnableFlag ;see if we're already disabled
|
||||
beq done ;if so, then exit
|
||||
|
||||
~DisableMItem #255 ; otherwise, disable close item
|
||||
|
||||
~SetMenuFlag #$0080,#3 ; and edit menu
|
||||
|
||||
_DrawMenuBar ;redraw the menu bar (so Edit will be
|
||||
; ;dimmed)
|
||||
; lda #FALSE
|
||||
stz EnableFlag ;and indicate that things are disabled
|
||||
rts ;Exit
|
||||
|
||||
enableClose lda EnableFlag ;see if things are already enabled
|
||||
bne done ;and if so, exit
|
||||
|
||||
~EnableMItem #255 ; enable close item
|
||||
|
||||
~SetMenuFlag #$FF7F,#3 ; and the edit menu
|
||||
|
||||
_DrawMenuBar ;redraw the menu bar
|
||||
|
||||
lda #TRUE ;and indicate that things are enabled
|
||||
sta EnableFlag
|
||||
|
||||
done rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
Ignore Start
|
||||
|
||||
rts ;Ignore all of these
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
doMenus Start
|
||||
Using GlobalDATA
|
||||
Using MenuDATA
|
||||
Using TaskDATA
|
||||
debug 'doMenus'
|
||||
|
||||
lda TData ;Find out which menu it was
|
||||
sec ;transform into a jump table offset
|
||||
sbc #255
|
||||
asl a
|
||||
tax
|
||||
jsr (MenuHandlers,x) ;and jump
|
||||
|
||||
~HiliteMenu #FALSE,TData+2 ; then unhilite it when done
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
doClose Start
|
||||
Using GlobalDATA
|
||||
Using MenuDATA
|
||||
debug 'doClose'
|
||||
|
||||
~FrontWindow
|
||||
bcs leave
|
||||
lda 1,s check if there is a front window
|
||||
ora 3,s
|
||||
bne ThereIsAWindow
|
||||
~DisableMItem #255 ; disable close
|
||||
leave pla if there isn't, then abort close op
|
||||
pla clean up stack
|
||||
rts and return
|
||||
|
||||
thereIsAWindow anop
|
||||
PullLong TempDP pointer to active window's GrafPort
|
||||
|
||||
WordResult
|
||||
pei TempDP+2
|
||||
pei TempDP
|
||||
_GetSysWFlag
|
||||
pla
|
||||
bne SystemWindow TRUE=system window
|
||||
|
||||
pei TempDP+2 close our window
|
||||
pei TempDP
|
||||
_CloseWindow
|
||||
rts
|
||||
|
||||
SystemWindow anop
|
||||
pei TempDP+2 pointer to window to close
|
||||
pei TempDP
|
||||
_CloseNDAbyWinPtr close system (NDA) window
|
||||
rts
|
||||
|
||||
~FrontWindow
|
||||
bcs leave2
|
||||
lda 1,s check if there is a front window
|
||||
ora 3,s
|
||||
bne leave2
|
||||
~DisableMItem #255 ; disable close
|
||||
leave2 plx if there isn't, then abort close op
|
||||
plx clean up stack
|
||||
rts and return
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
doAbout Start
|
||||
Using GlobalDATA
|
||||
debug 'doAbout'
|
||||
|
||||
~AlertWindow #awPString+awResource+awButtonLayout,#0,#awAbout
|
||||
plx
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
doPatch Start
|
||||
Using FileDATA
|
||||
Using GlobalDATA
|
||||
debug 'doPatch'
|
||||
|
||||
; lda SavedFlag ;if the window has hever been saved,
|
||||
; beq skip ;then skip this
|
||||
|
||||
; ~DisposeHandle Name ;dispose name and path strings
|
||||
; ~DisposeHandle Path
|
||||
|
||||
;skip anop
|
||||
|
||||
_GetNameGS p_getName
|
||||
|
||||
_GetDevNumberGS pGetDevNumber
|
||||
|
||||
lda pGetDevNumber_devNum
|
||||
sta pDInfo_devNum
|
||||
|
||||
_DInfoGS pDInfo
|
||||
|
||||
_VolumeGS pVolume
|
||||
|
||||
lda pVolume_fileSysID
|
||||
cmp #appleShareFSID
|
||||
beq GoAShare ; skip setting the path
|
||||
|
||||
_SetPrefixGS pSPfx
|
||||
|
||||
GoAShare anop
|
||||
PushWord #120 whereX 640
|
||||
PushWord #50 whereY 640
|
||||
PushWord #refIsPointer promptRefDesc
|
||||
PushLong #OpenString promptRef
|
||||
PushLong #0 filterProcPrt
|
||||
PushLong #TypeList typeListPtr
|
||||
PushLong #SFReply replyPtr
|
||||
_SFGetFile2
|
||||
|
||||
lda SFReply ;See if we should proceed
|
||||
bne ok
|
||||
brl abort
|
||||
|
||||
ok anop
|
||||
; ~GetCurResourceFile
|
||||
|
||||
lda Path ;Transfer the path to a dp location
|
||||
sta TempHandle
|
||||
lda Path+2
|
||||
sta TempHandle+2
|
||||
|
||||
WordResult
|
||||
PushWord #readWriteEnable ; Read/Write file access!
|
||||
lda #$0000
|
||||
pha
|
||||
pha ; pointer to resource map in memory
|
||||
ldy #2 ;Load the pointer to the name
|
||||
lda [TempHandle]
|
||||
clc ; adding two to skip over the length
|
||||
adc #2 ; of buffer word
|
||||
tax
|
||||
lda [TempHandle],y
|
||||
adc #0
|
||||
pha
|
||||
phx
|
||||
_OpenResourceFile
|
||||
plx
|
||||
stx rFileID
|
||||
php
|
||||
pha
|
||||
~DisposeHandle Name ;dispose name and path strings
|
||||
~DisposeHandle Path
|
||||
pla
|
||||
plp
|
||||
bcc openOk
|
||||
brl error_mgr
|
||||
|
||||
openOk anop
|
||||
|
||||
~LoadResource #rTaggedStrings,#1
|
||||
plx
|
||||
stx TaggedH
|
||||
stx TempDP
|
||||
plx
|
||||
stx TaggedH+2
|
||||
stx TempDP+2
|
||||
bcc taggedOk
|
||||
~CloseResourceFile rFileID
|
||||
clc
|
||||
lda #1 ; bad sound control panel
|
||||
brl error_mgr
|
||||
|
||||
taggedOk anop
|
||||
|
||||
* are you sure?
|
||||
|
||||
~AlertWindow #awPString+awResource+awButtonLayout,#0,#awAreYouSure
|
||||
pla
|
||||
beq sureThing ; patch (0)
|
||||
; ; cancel (1)
|
||||
|
||||
~CloseResourceFile rFileID
|
||||
brl abort
|
||||
|
||||
sureThing anop
|
||||
~HLock TaggedH
|
||||
|
||||
ldy #2 ; deref it
|
||||
lda [TempDP]
|
||||
tax
|
||||
lda [TempDP],y
|
||||
stx TempDP
|
||||
sta TempDP+2
|
||||
|
||||
* get count word..
|
||||
|
||||
lda [TempDP]
|
||||
sta string_count
|
||||
|
||||
* check if it already has strings for screen blanking and unblanking...
|
||||
* if a string is found for either, then refuse to patch this cdev.
|
||||
|
||||
ldy #2 ; skip past count word
|
||||
keep_checking lda [TempDP],y
|
||||
cmp #sbScreenBlanking
|
||||
beq ya_patched ; already patched
|
||||
cmp #sbScreenUnblanking
|
||||
beq ya_patched
|
||||
iny
|
||||
iny
|
||||
lda [TempDP],y
|
||||
and #$FF ; get length byte
|
||||
sta addToY+1
|
||||
iny
|
||||
tya
|
||||
clc
|
||||
addToY adc #0
|
||||
tay
|
||||
dec string_count
|
||||
bne keep_checking
|
||||
beq not_patched
|
||||
|
||||
ya_patched anop
|
||||
~CloseResourceFile rFileID
|
||||
clc
|
||||
lda #2 ; already patched
|
||||
brl error_mgr
|
||||
|
||||
not_patched anop
|
||||
|
||||
~HUnlock TaggedH
|
||||
|
||||
* get room to house the new tagged strings
|
||||
|
||||
~GetHandleSize TaggedH
|
||||
lda 1,s
|
||||
sta end_offset+1
|
||||
clc
|
||||
adc #strSize
|
||||
sta 1,s
|
||||
lda 3,s
|
||||
adc #0
|
||||
sta 3,s
|
||||
PushLong TaggedH
|
||||
_SetHandleSize
|
||||
bcc handleOk
|
||||
pha
|
||||
; ~ReleaseResource #3,#rTaggedStrings,#1
|
||||
~CloseResourceFile rFileID
|
||||
pla
|
||||
sec
|
||||
brl error_mgr
|
||||
|
||||
handleOk anop
|
||||
|
||||
lda TaggedH+2
|
||||
sta TempDP+2
|
||||
pha
|
||||
lda TaggedH
|
||||
sta TempDP
|
||||
pha
|
||||
_HLock
|
||||
|
||||
ldy #2 ; deref it again
|
||||
lda [TempDP]
|
||||
tax
|
||||
lda [TempDP],y
|
||||
stx TempDP
|
||||
sta TempDP+2
|
||||
|
||||
* append our data to the end of it
|
||||
|
||||
end_offset ldy #0
|
||||
ldx #0
|
||||
shortm
|
||||
keep_copying lda NewTaggedStrs,x
|
||||
sta [TempDP],y
|
||||
iny
|
||||
inx
|
||||
cpx #strSize
|
||||
blt keep_copying
|
||||
longm
|
||||
|
||||
* increment string count
|
||||
|
||||
lda [TempDP]
|
||||
inc a
|
||||
inc a
|
||||
sta [TempDP]
|
||||
|
||||
* we're just about done!
|
||||
|
||||
~MarkResourceChange #TRUE,#rTaggedStrings,#1
|
||||
|
||||
; ~ReleaseResource #3,#rTaggedStrings,#1
|
||||
~CloseResourceFile rFileID
|
||||
|
||||
~AlertWindow #awPString+awResource+awButtonLayout,#0,#awPatchSuccessful
|
||||
plx
|
||||
|
||||
abort rts
|
||||
|
||||
newTaggedStrs anop
|
||||
strSizeStart anop
|
||||
screenBlanking anop
|
||||
dc i'sbScreenBlanking'
|
||||
str 'Screen Blanking'
|
||||
screenUnblanking anop
|
||||
dc i'sbScreenUnblanking'
|
||||
str 'Screen Unblanking'
|
||||
strSizeEnd anop
|
||||
strSize equ strSizeEnd-strSizeStart
|
||||
|
||||
rFileID ds 2
|
||||
TaggedH ds 4
|
||||
string_count ds 2
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
FileDATA Data
|
||||
debug 'FileDATA'
|
||||
|
||||
OpenString str 'Locate the Sound control panel:'
|
||||
|
||||
TypeList anop
|
||||
dc i'1' number of types
|
||||
dc i'$8000' flags: don't match auxtype
|
||||
dc i'$C7' fileType
|
||||
dc i4'$0000' auxType
|
||||
|
||||
SFReply anop
|
||||
ds 2
|
||||
type ds 2
|
||||
auxType ds 4
|
||||
dc i'3'
|
||||
Name ds 4
|
||||
dc i'3'
|
||||
Path ds 4
|
||||
|
||||
p_getName GetNameRecGS curName
|
||||
curName C1Result MaxFSTLen
|
||||
pGetDevNumber DevNumRecGS (curName_textLen,0)
|
||||
pDInfo DInfoRecGS (0,bootDevName,0,0,0,0,0,0)
|
||||
bootDevName C1Result 40
|
||||
pVolume VolumeRecGS (bootDevName_textLen,curName,0,0,0,0,0,0)
|
||||
pSPfx PrefixRecGS (8,CDevPfx)
|
||||
CDevPfx GSStr '*:System:CDevs'
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
error_mgr Start
|
||||
debug 'error_mgr'
|
||||
Using ErrorDATA
|
||||
|
||||
bcs UnknownError
|
||||
dec a
|
||||
asl a
|
||||
asl a
|
||||
tax
|
||||
WordResult
|
||||
PushWord #awPString+awResource+awButtonLayout
|
||||
lda #0
|
||||
pha
|
||||
pha ; sub array
|
||||
lda alert_ids+2,x
|
||||
pha
|
||||
lda alert_ids,x
|
||||
pha
|
||||
_AlertWindow
|
||||
plx
|
||||
rts
|
||||
|
||||
UnknownError anop
|
||||
LongResult
|
||||
pha
|
||||
_HexIt
|
||||
PullLong asciiErr
|
||||
|
||||
* Create an alert informing the user that there was an error.
|
||||
|
||||
~AlertWindow #awPString+awResource+awButtonLayout,#errorSub,#awUnknownErr
|
||||
plx
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
ErrorDATA Data
|
||||
debug 'ErrorDATA'
|
||||
|
||||
* Alert string substitution array for error alert dialogs.
|
||||
|
||||
errorSub dc i4'errorStr'
|
||||
errorStr anop
|
||||
dc h'04' ; length byte (pstring)
|
||||
asciiErr ds 4
|
||||
|
||||
* custom alert ids..
|
||||
|
||||
alert_ids anop
|
||||
dc i4'awBadCDev,awAlreadyPatched'
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
doQuit Start
|
||||
Using GlobalDATA
|
||||
debug 'doQuit'
|
||||
|
||||
lda #TRUE ;Indicate that it's time to quit
|
||||
sta QuitFlag
|
||||
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
doHelp Start
|
||||
Using HelpDATA
|
||||
Using GlobalDATA
|
||||
debug 'doHelp'
|
||||
|
||||
LongResult ;open a window with the Help in it
|
||||
ldy #0
|
||||
phy
|
||||
phy
|
||||
phy
|
||||
phy
|
||||
PushLong #drawContent
|
||||
phy
|
||||
phy
|
||||
PushWord #refIsResource
|
||||
PushLong #help_Window
|
||||
PushWord #rWindParam1
|
||||
_NewWindow2
|
||||
PullLong HelpPtr
|
||||
|
||||
wait anop
|
||||
|
||||
; then wait for the person to hit the close box, filtering out all other events
|
||||
|
||||
~TaskMaster #$FFFF,#HelpTRecord
|
||||
pla
|
||||
cmp #autoKeyEvt
|
||||
beq noWKey
|
||||
cmp #keyDownEvt
|
||||
bne noKey
|
||||
lda HMessage
|
||||
and #$5F
|
||||
cmp #"W"
|
||||
bne noWKey
|
||||
lda HModifiers
|
||||
bit #appleKey
|
||||
; beq noKey
|
||||
bne goClose
|
||||
noWKey ~SendEventToCtl #FALSE,HelpPtr,#HelpTRecord
|
||||
pla
|
||||
bra wait
|
||||
|
||||
noKey cmp #wInGoAway
|
||||
bne wait
|
||||
|
||||
goClose ~CloseWindow HelpPtr ; close Help window
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
DrawContent Start
|
||||
debug 'DrawContent'
|
||||
|
||||
phb
|
||||
phk
|
||||
plb
|
||||
LongResult
|
||||
_GetPort
|
||||
_DrawControls
|
||||
plb
|
||||
rtl
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
HelpDATA Data
|
||||
|
||||
HelpPtr ds 4
|
||||
|
||||
HelpTRecord anop
|
||||
HWhat ds 2
|
||||
HMessage ds 4
|
||||
HWhen ds 4
|
||||
HWhere ds 4
|
||||
HModifiers ds 2
|
||||
HTData ds 4
|
||||
dc i4'$0011A106' ;+tmControlKey'
|
||||
HLastClickTick ds 4
|
||||
HClickCount ds 2
|
||||
HTaskData2 ds 4
|
||||
HTaskData3 ds 4
|
||||
HTaskData4 ds 4
|
||||
HLastClickPoint ds 4
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
||||
Shutdown Start
|
||||
debug 'Shutdown'
|
||||
Using GlobalDATA
|
||||
|
||||
~ShutDownTools #refIsHandle,SSRecRefRet ; shutdown most of the tools
|
||||
~MMShutDown MasterID
|
||||
~TLShutDown ; then the Tool Locator
|
||||
rts
|
||||
|
||||
End
|
||||
*-----------------------------------------------------------------------------*
|
19
source/twilight/patch/patch.equ
Normal file
19
source/twilight/patch/patch.equ
Normal file
@ -0,0 +1,19 @@
|
||||
|
||||
menuBar GEQU $00000001
|
||||
|
||||
AppleMenu GEQU $00000001
|
||||
FileMenu GEQU $00000002
|
||||
EditMenu GEQU $00000003
|
||||
|
||||
help_Window GEQU $00000FFD
|
||||
|
||||
help_WColor GEQU $00000FFD
|
||||
|
||||
toolTable GEQU $00000002
|
||||
|
||||
awAlreadyPatched gequ 1
|
||||
awAreYouSure gequ 2
|
||||
awAbout gequ 3
|
||||
awUnknownErr gequ 4
|
||||
awBadCDev gequ 5
|
||||
awPatchSuccessful gequ 6
|
634
source/twilight/patch/patch.mac
Normal file
634
source/twilight/patch/patch.mac
Normal file
@ -0,0 +1,634 @@
|
||||
MACRO
|
||||
&lab _DrawMenuBar
|
||||
&lab ldx #$2A0F
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SetSysBar
|
||||
&lab ldx #$120F
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _QUIT ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$29"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SFGetFile2
|
||||
&lab ldx #$0E17
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _CloseWindow
|
||||
&lab ldx #$0B0E
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _NewWindow2
|
||||
&lab ldx #$610E
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab pulllong &addr1,&addr2
|
||||
&lab ANOP
|
||||
AIF C:&addr1=0,.a
|
||||
AIF C:&addr2=0,.b
|
||||
LCLC &C
|
||||
&C AMID &addr1,1,1
|
||||
AIF "&C"="[",.zeropage
|
||||
pullword &addr1
|
||||
sta &addr2
|
||||
pullword &addr1+2
|
||||
sta &addr2+2
|
||||
MEXIT
|
||||
.a
|
||||
pullword
|
||||
pullword
|
||||
MEXIT
|
||||
.b
|
||||
pullword &addr1
|
||||
pullword &addr1+2
|
||||
MEXIT
|
||||
.zeropage
|
||||
ldy #&addr2
|
||||
pullword &addr1,y
|
||||
ldy #&addr2+2
|
||||
pullword &addr1,y
|
||||
MEND
|
||||
MACRO
|
||||
&lab pullword &SYSOPR
|
||||
&lab ANOP
|
||||
pla
|
||||
AIF C:&SYSOPR=0,.end
|
||||
sta &SYSOPR
|
||||
.end
|
||||
MEND
|
||||
MACRO
|
||||
&lab pushlong &addr,&offset
|
||||
&lab ANOP
|
||||
LCLC &C
|
||||
LCLC &REST
|
||||
&C AMID &addr,1,1
|
||||
AIF "&C"="#",.immediate
|
||||
AIF "&C"="[",.zeropage
|
||||
AIF C:&offset=0,.nooffset
|
||||
AIF "&offset"="s",.stack
|
||||
pushword &addr+2,&offset
|
||||
pushword &addr,&offset
|
||||
MEXIT
|
||||
.nooffset
|
||||
pushword &addr+2
|
||||
pushword &addr
|
||||
MEXIT
|
||||
.immediate
|
||||
&REST AMID &addr,2,L:&addr-1
|
||||
dc I1'$F4',I2'(&REST)|-16'
|
||||
dc I1'$F4',I2'&REST'
|
||||
MEXIT
|
||||
.stack
|
||||
pushword &addr+2,s
|
||||
pushword &addr+2,s
|
||||
MEXIT
|
||||
.zeropage
|
||||
ldy #&offset+2
|
||||
pushword &addr,y
|
||||
ldy #&offset
|
||||
pushword &addr,y
|
||||
MEND
|
||||
MACRO
|
||||
&lab pushword &SYSOPR
|
||||
&lab ANOP
|
||||
AIF C:&SYSOPR=0,.b
|
||||
LCLC &C
|
||||
&C AMID "&SYSOPR",1,1
|
||||
AIF ("&C"="#").AND.(S:LONGA),.immediate
|
||||
lda &SYSOPR
|
||||
pha
|
||||
MEXIT
|
||||
.b
|
||||
pha
|
||||
MEXIT
|
||||
.immediate
|
||||
LCLC &REST
|
||||
LCLA &BL
|
||||
&BL ASEARCH "&SYSOPR"," ",1
|
||||
AIF &BL>0,.a
|
||||
&BL SETA L:&SYSOPR+1
|
||||
.a
|
||||
&REST AMID "&SYSOPR",2,&BL-2
|
||||
dc I1'$F4',I2'&REST'
|
||||
MEND
|
||||
MACRO
|
||||
&lab str &string
|
||||
&lab dc i1'L:&string',C'&string'
|
||||
MEND
|
||||
macro
|
||||
&lab ~FixAppleMenu &menuID
|
||||
&lab ph2 &menuID
|
||||
Tool $1E05
|
||||
mend
|
||||
macro
|
||||
&lab ~MMStartUp
|
||||
&lab WordResult
|
||||
Tool $0202
|
||||
mend
|
||||
macro
|
||||
&lab ~MMShutDown &userID
|
||||
&lab ph2 &userID
|
||||
Tool $0302
|
||||
mend
|
||||
macro
|
||||
&lab ~DisposeHandle &theHandle
|
||||
&lab ph4 &theHandle
|
||||
Tool $1002
|
||||
mend
|
||||
macro
|
||||
&lab ~DrawMenuBar
|
||||
&lab Tool $2A0F
|
||||
mend
|
||||
macro
|
||||
&lab ~FixMenuBar
|
||||
&lab WordResult
|
||||
Tool $130F
|
||||
mend
|
||||
macro
|
||||
&lab ~HiliteMenu &hiliteFlag,&menuID
|
||||
&lab ph2 &hiliteFlag
|
||||
ph2 &menuID
|
||||
Tool $2C0F
|
||||
mend
|
||||
macro
|
||||
&lab ~NewMenuBar2 &refDesc,&menuBarTRef,&windowPtr
|
||||
&lab LongResult
|
||||
ph2 &refDesc
|
||||
ph4 &menuBarTRef
|
||||
ph4 &windowPtr
|
||||
Tool $430F
|
||||
mend
|
||||
macro
|
||||
&lab ~SetMenuFlag &newValue,&menuID
|
||||
&lab ph2 &newValue
|
||||
ph2 &menuID
|
||||
Tool $1F0F
|
||||
mend
|
||||
macro
|
||||
&lab ~InitCursor
|
||||
&lab Tool $CA04
|
||||
mend
|
||||
macro
|
||||
&lab ~TLStartUp
|
||||
&lab Tool $0201
|
||||
mend
|
||||
macro
|
||||
&lab ~TLShutDown
|
||||
&lab Tool $0301
|
||||
mend
|
||||
macro
|
||||
&lab ~ShutDownTools &startStopRefDesc,&startStopRef
|
||||
&lab ph2 &startStopRefDesc
|
||||
ph4 &startStopRef
|
||||
Tool $1901
|
||||
mend
|
||||
macro
|
||||
&lab ~AlertWindow &alertFlags,&subStrPtr,&alertStrRef
|
||||
&lab WordResult
|
||||
ph2 &alertFlags
|
||||
ph4 &subStrPtr
|
||||
ph4 &alertStrRef
|
||||
Tool $590E
|
||||
mend
|
||||
macro
|
||||
&lab ~CloseWindow &windowPtr
|
||||
&lab ph4 &windowPtr
|
||||
Tool $0B0E
|
||||
mend
|
||||
macro
|
||||
&lab ~FrontWindow
|
||||
&lab LongResult
|
||||
Tool $150E
|
||||
mend
|
||||
macro
|
||||
&lab ~TaskMaster &eventMask,&taskRecPtr
|
||||
&lab WordResult
|
||||
ph2 &eventMask
|
||||
ph4 &taskRecPtr
|
||||
Tool $1D0E
|
||||
mend
|
||||
macro
|
||||
&lab Tool &number
|
||||
&lab ldx #&number
|
||||
jsl $E10000
|
||||
mend
|
||||
macro
|
||||
&lab ph2 &addr,&offset
|
||||
&lab anop
|
||||
lclc &char
|
||||
&char amid "&addr",1,1
|
||||
aif "&char"="@",.accumulator
|
||||
aif "&char"="*",.smartmacros
|
||||
aif "&char"="#",.immediate
|
||||
aif "&char"="<",.directPage
|
||||
aif "&char"="[",.zeropage
|
||||
aif C:&offset=0,.nooffset
|
||||
aif "&offset"="s",.stack
|
||||
lda &addr,&offset
|
||||
pha
|
||||
mexit
|
||||
.nooffset
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.stack
|
||||
lda &addr,s
|
||||
pha
|
||||
mexit
|
||||
.smartmacros
|
||||
mexit
|
||||
.accumulator
|
||||
pha
|
||||
mexit
|
||||
.directPage
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pei &addr
|
||||
mexit
|
||||
.immediate
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pea &addr
|
||||
mexit
|
||||
.zeropage
|
||||
aif C:&offset<>0,.zeroPageOff
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.zeroPageOff
|
||||
aif "&offset"="X",.zeroPageReg
|
||||
aif "&offset"="Y",.zeroPageReg
|
||||
aif "&offset"="x",.zeroPageReg
|
||||
aif "&offset"="y",.zeroPageReg
|
||||
ldy #&offset
|
||||
lda &addr,y
|
||||
pha
|
||||
mexit
|
||||
.zeroPageReg
|
||||
lda &addr,&offset
|
||||
pha
|
||||
mend
|
||||
macro
|
||||
&lab ph4 &addr,&offset
|
||||
&lab anop
|
||||
lclc &char
|
||||
&char amid &addr,1,1
|
||||
aif "&char"="@",.registers
|
||||
aif "&char"="*",.smartmacros
|
||||
aif "&char"="#",.immediate
|
||||
aif "&char"="<",.directPage
|
||||
aif "&char"="[",.zeropage
|
||||
aif c:&offset=0,.nooffset
|
||||
aif "&offset"="s",.stack
|
||||
.yesoffset
|
||||
lda &addr+2,&offset
|
||||
pha
|
||||
lda &addr,&offset
|
||||
pha
|
||||
mexit
|
||||
.nooffset
|
||||
lda &addr+2
|
||||
pha
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.stack
|
||||
lda &addr+2,s
|
||||
pha
|
||||
lda &addr,s
|
||||
pha
|
||||
mexit
|
||||
.registers
|
||||
phy
|
||||
phx
|
||||
mexit
|
||||
.smartmacros
|
||||
mexit
|
||||
.immediate
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pea +(&addr)|-16
|
||||
pea &addr
|
||||
mexit
|
||||
.directPage
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pei &addr+2
|
||||
pei &addr
|
||||
mexit
|
||||
.zeroPage
|
||||
aif C:&offset<>0,.zeroPageOffset
|
||||
ldy #2
|
||||
lda &addr,y
|
||||
pha
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.zeroPageOffset
|
||||
aif "&offset"="X",.zeroPageRegX
|
||||
aif "&offset"="Y",.zeroPageRegY
|
||||
aif "&offset"="x",.zeroPageRegX
|
||||
aif "&offset"="y",.zeroPageRegY
|
||||
ldy #&offset+2
|
||||
lda &addr,y
|
||||
pha
|
||||
ldy #&offset
|
||||
lda &addr,y
|
||||
pha
|
||||
mexit
|
||||
.zeroPageRegX
|
||||
lda &addr,&offset
|
||||
tay
|
||||
inx
|
||||
inx
|
||||
lda &addr,&offset
|
||||
pha
|
||||
phy
|
||||
mexit
|
||||
.zeroPageRegY
|
||||
lda &addr,&offset
|
||||
tax
|
||||
iny
|
||||
iny
|
||||
lda &addr,&offset
|
||||
pha
|
||||
phx
|
||||
mend
|
||||
MACRO
|
||||
&lab WordResult
|
||||
&lab phd
|
||||
MEND
|
||||
MACRO
|
||||
&lab LongResult
|
||||
&lab phd
|
||||
phd
|
||||
MEND
|
||||
macro
|
||||
&lab ~StartUpTools &userID,&startStopRefDesc,&startStopRef
|
||||
&lab LongResult
|
||||
ph2 &userID
|
||||
ph2 &startStopRefDesc
|
||||
ph4 &startStopRef
|
||||
Tool $1801
|
||||
mend
|
||||
macro
|
||||
&lab ~SetMenuBar &barHandle
|
||||
&lab ph4 &barHandle
|
||||
Tool $390F
|
||||
mend
|
||||
MACRO
|
||||
&lab _DrawControls
|
||||
&lab ldx #$1010
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _CloseNDAbyWinPtr
|
||||
&lab ldx #$1C05
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _GetPort
|
||||
&lab ldx #$1C04
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _GetSysWFlag
|
||||
&lab ldx #$4C0E
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~DisableMItem &itemNum
|
||||
&lab ph2 &itemNum
|
||||
Tool $310F
|
||||
mend
|
||||
macro
|
||||
&lab ~EnableMItem &itemNum
|
||||
&lab ph2 &itemNum
|
||||
Tool $300F
|
||||
mend
|
||||
macro
|
||||
&lab ~SendEventToCtl &targetOnlyFlag,&ctlWindowPtr,&eTaskRecPtr
|
||||
&lab WordResult
|
||||
ph2 &targetOnlyFlag
|
||||
ph4 &ctlWindowPtr
|
||||
ph4 &eTaskRecPtr
|
||||
Tool $2910
|
||||
mend
|
||||
MACRO
|
||||
&lab _HexIt
|
||||
&lab ldx #$2A0B
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _HLock
|
||||
&lab ldx #$2002
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SetHandleSize
|
||||
&lab ldx #$1902
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab longm
|
||||
&lab ANOP
|
||||
rep #%00100000
|
||||
longa on
|
||||
MEND
|
||||
MACRO
|
||||
&lab shortm
|
||||
&lab ANOP
|
||||
sep #%00100000
|
||||
longa off
|
||||
MEND
|
||||
MACRO
|
||||
&lab _AlertWindow
|
||||
&lab ldx #$590E
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _OpenResourceFile
|
||||
&lab ldx #$0A1E
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~GetHandleSize &theHandle
|
||||
&lab LongResult
|
||||
ph4 &theHandle
|
||||
Tool $1802
|
||||
mend
|
||||
macro
|
||||
&lab ~HLock &theHandle
|
||||
&lab ph4 &theHandle
|
||||
Tool $2002
|
||||
mend
|
||||
macro
|
||||
&lab ~HUnlock &theHandle
|
||||
&lab ph4 &theHandle
|
||||
Tool $2202
|
||||
mend
|
||||
macro
|
||||
&lab ~CloseResourceFile &fileID
|
||||
&lab ph2 &fileID
|
||||
Tool $0B1E
|
||||
mend
|
||||
macro
|
||||
&lab ~LoadResource &resourceType,&resourceID
|
||||
&lab LongResult
|
||||
ph2 &resourceType
|
||||
ph4 &resourceID
|
||||
Tool $0E1E
|
||||
mend
|
||||
macro
|
||||
&lab ~MarkResourceChange &changeFlag,&resourceType,&resourceID
|
||||
&lab ph2 &changeFlag
|
||||
ph2 &resourceType
|
||||
ph4 &resourceID
|
||||
Tool $101E
|
||||
mend
|
||||
MACRO
|
||||
&lab Debug &string
|
||||
aif t:debugSymbols="G",.begin
|
||||
mexit
|
||||
.begin
|
||||
dc i1'$82'
|
||||
dc i2'(L:&string)+3'
|
||||
dc i2'$7771'
|
||||
dc i1'L:&string',C'&string'
|
||||
MEND
|
||||
macro
|
||||
&lab C1Result &size,&text
|
||||
&lab anop
|
||||
&lab._bufsize dw &size
|
||||
aif c:&text=0,.nodefault
|
||||
&lab._textlen dw l:&text
|
||||
&lab._text dc c"&text"
|
||||
ds &size-4-(l:&text)
|
||||
mexit
|
||||
.nodefault
|
||||
&lab._textlen dw
|
||||
&lab._text ds &size-$04
|
||||
mend
|
||||
macro
|
||||
&lab dw &location
|
||||
&lab anop
|
||||
aif c:&location<>0,.exists
|
||||
ds 2
|
||||
mexit
|
||||
.exists
|
||||
dc i2'&location'
|
||||
mend
|
||||
MACRO
|
||||
&lab _VolumeGS ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$2008"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
macro
|
||||
&lab GetNameRecGS ¶meters
|
||||
lcla &pCount
|
||||
&pCount seta c:¶meters
|
||||
&lab anop
|
||||
&lab._pCount dc i2'&pCount'
|
||||
&lab._dataBuffer dc i4'¶meters(1)'
|
||||
mend
|
||||
macro
|
||||
&lab VolumeRecGS ¶meters
|
||||
lcla &pCount
|
||||
&pCount seta c:¶meters
|
||||
&lab anop
|
||||
&lab._pCount dc i2'&pCount'
|
||||
&lab._devName dc i4'¶meters(1)'
|
||||
&lab._volName dc i4'¶meters(2)'
|
||||
aif c:¶meters=2,.exit
|
||||
&lab._totalBlocks dc i4'¶meters(3)'
|
||||
aif c:¶meters=3,.exit
|
||||
&lab._freeBlocks dc i4'¶meters(4)'
|
||||
aif c:¶meters=4,.exit
|
||||
&lab._fileSysID dc i2'¶meters(5)'
|
||||
aif c:¶meters=5,.exit
|
||||
&lab._blockSize dc i2'¶meters(6)'
|
||||
aif c:¶meters=6,.exit
|
||||
&lab._characteristics dc i2'¶meters(7)'
|
||||
aif c:¶meters=7,.exit
|
||||
&lab._deviceID dc i2'¶meters(8)'
|
||||
.exit
|
||||
mend
|
||||
macro
|
||||
&lab DevNumRecGS ¶meters
|
||||
lcla &pCount
|
||||
&pCount seta c:¶meters
|
||||
&lab anop
|
||||
&lab._pCount dc i2'&pCount'
|
||||
&lab._devName dc i4'¶meters(1)'
|
||||
&lab._devNum dc i2'¶meters(2)'
|
||||
mend
|
||||
macro
|
||||
&lab DInfoRecGS ¶meters
|
||||
lcla &pCount
|
||||
&pCount seta c:¶meters
|
||||
&lab anop
|
||||
&lab._pCount dc i2'&pCount'
|
||||
&lab._devNum dc i2'¶meters(1)'
|
||||
&lab._devName dc i4'¶meters(2)'
|
||||
aif c:¶meters=2,.exit
|
||||
&lab._characteristics dc i2'¶meters(3)'
|
||||
aif c:¶meters=3,.exit
|
||||
&lab._totalBlocks dc i4'¶meters(4)'
|
||||
aif c:¶meters=4,.exit
|
||||
&lab._slotNum dc i2'¶meters(5)'
|
||||
aif c:¶meters=5,.exit
|
||||
&lab._unitNum dc i2'¶meters(6)'
|
||||
aif c:¶meters=6,.exit
|
||||
&lab._version dc i2'¶meters(7)'
|
||||
aif c:¶meters=7,.exit
|
||||
&lab._deviceID dc i2'¶meters(8)'
|
||||
aif c:¶meters=8,.exit
|
||||
&lab._headLink dc i2'¶meters(9)'
|
||||
aif c:¶meters=9,.exit
|
||||
&lab._forwardLink dc i2'¶meters(10)'
|
||||
aif c:¶meters=10,.exit
|
||||
&lab._extendedDIBPtr dc i4'¶meters(11)'
|
||||
.exit
|
||||
mend
|
||||
MACRO
|
||||
&lab _DInfoGS ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$202C"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
MACRO
|
||||
&lab _GetDevNumberGS ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$2020"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
MACRO
|
||||
&lab GSStr &GSstring
|
||||
&lab dc i2'L:&GSstring',C'&GSstring'
|
||||
MEND
|
||||
MACRO
|
||||
&lab _GetNameGS ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$2027"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SetPrefixGS ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$2009"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
macro
|
||||
&lab PrefixRecGS ¶meters
|
||||
lcla &pCount
|
||||
&pCount seta c:¶meters
|
||||
&lab anop
|
||||
&lab._pCount dc i2'&pCount'
|
||||
&lab._prefixNum dc i2'¶meters(1)'
|
||||
&lab._prefix dc i4'¶meters(2)'
|
||||
mend
|
441
source/twilight/patch/patch.rez
Normal file
441
source/twilight/patch/patch.rez
Normal file
@ -0,0 +1,441 @@
|
||||
|
||||
#include "types.rez"
|
||||
|
||||
// --- type $8004 defines
|
||||
#define CTLTMP_00007004 $00007004
|
||||
// --- type $8006 defines
|
||||
#define PSTR_00000001 $00000001
|
||||
#define PSTR_00000002 $00000002
|
||||
#define PSTR_00000003 $00000003
|
||||
#define PSTR_000000FA $000000FA
|
||||
#define PSTR_000000FB $000000FB
|
||||
#define PSTR_000000FC $000000FC
|
||||
#define PSTR_000000FD $000000FD
|
||||
#define PSTR_000000FE $000000FE
|
||||
#define PSTR_000000FF $000000FF
|
||||
#define PSTR_00000100 $00000100
|
||||
#define PSTR_00000101 $00000101
|
||||
#define PSTR_00000103 $00000103
|
||||
#define PSTR_00000107 $00000107
|
||||
#define PSTR_00010000 $00010000
|
||||
#define PSTR_00010001 $00010001
|
||||
// --- type $8008 defines
|
||||
#define menuBar $00000001
|
||||
// --- type $8009 defines
|
||||
#define AppleMenu $00000001
|
||||
#define FileMenu $00000002
|
||||
#define EditMenu $00000003
|
||||
// --- type $800A defines
|
||||
#define MENUITEM_000000FA $000000FA
|
||||
#define MENUITEM_000000FB $000000FB
|
||||
#define MENUITEM_000000FC $000000FC
|
||||
#define MENUITEM_000000FD $000000FD
|
||||
#define MENUITEM_000000FE $000000FE
|
||||
#define MENUITEM_000000FF $000000FF
|
||||
#define MENUITEM_00000100 $00000100
|
||||
#define MENUITEM_00000101 $00000101
|
||||
#define MENUITEM_00000103 $00000103
|
||||
#define MENUITEM_00000105 $00000105
|
||||
#define MENUITEM_00000107 $00000107
|
||||
// --- type $800E defines
|
||||
#define help_Window $00000FFD
|
||||
// --- type $8010 defines
|
||||
#define help_WColor $00000FFD
|
||||
// --- type $8013 defines
|
||||
#define toolTable $00000002
|
||||
// --- type $8015 defines
|
||||
#define awAlreadyPatched 1
|
||||
#define awAreYouSure 2
|
||||
#define awAbout 3
|
||||
#define awUnknownErr 4
|
||||
#define awBadCDev 5
|
||||
#define awPatchSuccessful 6
|
||||
// --- type $8016 defines
|
||||
#define TXT_00000004 $00000004
|
||||
|
||||
// --- Version resource
|
||||
|
||||
resource rVersion (1) {
|
||||
{1,0,0,release,0}, // Version
|
||||
verUS, // US Version
|
||||
"Twilight\$CAII\$AA Sound Patcher", // program's name
|
||||
"Copyright 1993, DigiSoft Innovations.\n" // copyright notice
|
||||
"All rights reserved."
|
||||
};
|
||||
|
||||
// --- Control Templates
|
||||
|
||||
resource rControlTemplate (CTLTMP_00007004) {
|
||||
1, // ID
|
||||
{ 0, 2,171,633}, // rect
|
||||
editTextControl {{
|
||||
$0000, // flag
|
||||
$7400, // moreFlags
|
||||
$00000000, // refCon
|
||||
$27280000, // textFlags
|
||||
{65535,65535,65535,65535}, // indentRect
|
||||
$FFFFFFFF, // vertBar
|
||||
$0000, // vertAmount
|
||||
$00000000, // horzBar
|
||||
$0000, // horzAmount
|
||||
$00000000, // styleRef
|
||||
$0015, // textDescriptor
|
||||
TXT_00000004, // textRef
|
||||
$00000000, // textLength
|
||||
$00000000, // maxChars
|
||||
$00000000, // maxLines
|
||||
$0000, // maxCharsPerLine
|
||||
$0000, // maxHeight
|
||||
0, // colorTableRef
|
||||
$0000, // drawMode
|
||||
$00000000 // filterProcPtr
|
||||
}};
|
||||
};
|
||||
|
||||
// --- rPString Templates
|
||||
|
||||
resource rPString (555) {
|
||||
" Help "
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000001, $C018) {
|
||||
"@"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000002, $C018) {
|
||||
" File "
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000003, $C018) {
|
||||
" Edit "
|
||||
};
|
||||
|
||||
resource rPString (PSTR_000000FA, $C018) {
|
||||
"Undo"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_000000FB, $C018) {
|
||||
"Cut"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_000000FC, $C018) {
|
||||
"Copy"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_000000FD, $C018) {
|
||||
"Paste"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_000000FE, $C018) {
|
||||
"Clear"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_000000FF, $C018) {
|
||||
"Close"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000100, $C018) {
|
||||
"About Sound Patcher \$C9"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000101, $C018) {
|
||||
"Quit"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000103, $C018) {
|
||||
"Patch "
|
||||
"\$C9"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000107, $C018) {
|
||||
"Help \$C9"
|
||||
};
|
||||
|
||||
// --- Menu Bar Definitions
|
||||
|
||||
resource rMenuBar (menuBar, $C018) {
|
||||
{
|
||||
AppleMenu,
|
||||
FileMenu,
|
||||
EditMenu
|
||||
};
|
||||
};
|
||||
|
||||
// --- Menu Definitions
|
||||
|
||||
resource rMenu (AppleMenu, $C018) {
|
||||
$0001, // menuID
|
||||
$A008, // menuFlag
|
||||
PSTR_00000001, { // menuTitleRef
|
||||
MENUITEM_00000100,
|
||||
MENUITEM_00000107
|
||||
};
|
||||
};
|
||||
|
||||
resource rMenu (FileMenu, $C018) {
|
||||
$0002, // menuID
|
||||
$A008, // menuFlag
|
||||
PSTR_00000002, { // menuTitleRef
|
||||
MENUITEM_00000103,
|
||||
MENUITEM_000000FF,
|
||||
MENUITEM_00000101
|
||||
};
|
||||
};
|
||||
|
||||
resource rMenu (EditMenu, $C018) {
|
||||
$0003, // menuID
|
||||
$A088, // menuFlag
|
||||
PSTR_00000003, { // menuTitleRef
|
||||
MENUITEM_000000FA,
|
||||
MENUITEM_000000FB,
|
||||
MENUITEM_000000FC,
|
||||
MENUITEM_000000FD,
|
||||
MENUITEM_000000FE
|
||||
};
|
||||
};
|
||||
|
||||
// --- Menu Item Definitions
|
||||
|
||||
resource rMenuItem (MENUITEM_000000FA, $C018) {
|
||||
$00FA, // itemID
|
||||
"Z","z", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8040, // itemFlag
|
||||
PSTR_000000FA // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_000000FB, $C018) {
|
||||
$00FB, // itemID
|
||||
"X","x", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8000, // itemFlag
|
||||
PSTR_000000FB // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_000000FC, $C018) {
|
||||
$00FC, // itemID
|
||||
"C","c", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8000, // itemFlag
|
||||
PSTR_000000FC // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_000000FD, $C018) {
|
||||
$00FD, // itemID
|
||||
"V","v", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8000, // itemFlag
|
||||
PSTR_000000FD // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_000000FE, $C018) {
|
||||
$00FE, // itemID
|
||||
"","", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8000, // itemFlag
|
||||
PSTR_000000FE // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_000000FF, $0018) {
|
||||
$00FF, // itemID --CLOSE
|
||||
"W","w", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8080, // itemFlag
|
||||
PSTR_000000FF // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_00000100, $0018) {
|
||||
$0100, // itemID --ABOUT
|
||||
"","", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8000, // itemFlag
|
||||
PSTR_00000100 // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_00000101, $0018) {
|
||||
$0101, // itemID --QUIT
|
||||
"Q","q", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8000, // itemFlag
|
||||
PSTR_00000101 // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_00000103, $0018) {
|
||||
$0102, // itemID --PATCH
|
||||
"P","p", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8040, // itemFlag
|
||||
PSTR_00000103 // itemTitleRef
|
||||
};
|
||||
|
||||
resource rMenuItem (MENUITEM_00000107, $0018) {
|
||||
$0103, // itemID --HELP
|
||||
"?","/", // itemChar, itemAltChar
|
||||
NIL, // itemCheck
|
||||
$8040, // itemFlag
|
||||
PSTR_00000107 // itemTitleRef
|
||||
};
|
||||
|
||||
// --- Window Templates
|
||||
|
||||
resource rWindParam1 (help_Window) {
|
||||
$C020, // plFrame (frame bits)
|
||||
555, // plTitle (title ID)
|
||||
$00000000, // p1RefCon
|
||||
{ 0, 0, 0, 0}, // p1ZoomRect
|
||||
help_WColor, // p1ColorTable
|
||||
{$0000, $0000}, // p1YOrigin, p1XOrigin
|
||||
{$0000, $0000}, // p1DataHeight, p1DataWidth
|
||||
{$0000, $0000}, // p1MaxHeight, p1MaxWidth
|
||||
{$0000, $0000}, // p1VerScroll, p1HorScroll
|
||||
{$0000, $0000}, // p1VerPage, p1HorPage
|
||||
$00000000, // p1InfoText (info RefCon)
|
||||
$0000, // p1InfoHeight
|
||||
{ 27, 4,197,636}, // p1Position
|
||||
infront, // p1Plane
|
||||
CTLTMP_00007004, // plControlList
|
||||
$0A02 // plInDesc
|
||||
};
|
||||
|
||||
// --- Window Color Templates
|
||||
|
||||
resource rWindColor (help_WColor) {
|
||||
$0000, // frameColor
|
||||
$0F00, // titleColor
|
||||
$020F, // tBarColor
|
||||
$F0FF, // growColor
|
||||
$00F0 // infoColor
|
||||
};
|
||||
|
||||
// --- Tool Startup Table Templates
|
||||
|
||||
resource rToolStartup (toolTable) {
|
||||
$C080, { // videoMode
|
||||
1, $0300, // Tool Locator
|
||||
2, $0300, // Memory Manager
|
||||
3, $0300, // Miscellaneous Tools
|
||||
4, $0301, // QuickDraw II
|
||||
5, $0302, // Desk Manager
|
||||
6, $0300, // Event Manager
|
||||
7, $0200, // Scheduler
|
||||
11, $0200, // Integer Math
|
||||
14, $0301, // Window Manager
|
||||
15, $0301, // Menu Manager
|
||||
16, $0301, // Control Manager
|
||||
18, $0301, // QuickDraw II Aux.
|
||||
20, $0301, // LineEdit Tools
|
||||
21, $0301, // Dialog Manager
|
||||
22, $0300, // Scrap Manager
|
||||
23, $0301, // Standard File Tools
|
||||
27, $0301, // Font Manager
|
||||
28, $0301, // List Manager
|
||||
30, $0100, // Resource Manager
|
||||
34, $0101 // TextEdit Manager
|
||||
}
|
||||
};
|
||||
|
||||
// --- rAlertString Templates
|
||||
|
||||
resource rAlertString (awAlreadyPatched) {
|
||||
"52~This copy of the Sound control panel already has been patched"
|
||||
"!~^#1"
|
||||
"\$00"
|
||||
};
|
||||
|
||||
resource rAlertString (awAreYouSure) {
|
||||
"73~Are you sure you want to patch this copy of the Sound control"
|
||||
" panel?\n"
|
||||
"The change will be permanent, but it will not harm normal operat"
|
||||
"ion in any way.~Patch~^#1"
|
||||
"\$00"
|
||||
};
|
||||
|
||||
resource rAlertString (awAbout) {
|
||||
"53~Sound Patcher v1.0, by Jim Maricondo.\n"
|
||||
"Copyright 1993, DigiSoft Innovations.\n"
|
||||
"All rights reserved.~^#0"
|
||||
"\$00"
|
||||
};
|
||||
|
||||
resource rAlertString (awUnknownErr) {
|
||||
"52~Unknown error. Operation aborted. ($*0)~^#1"
|
||||
"\$00"
|
||||
};
|
||||
|
||||
resource rAlertString (awBadCDev) {
|
||||
"52~This is not Apple\$D5s "
|
||||
"Sound control panel or is an unrecognized version.~^#1"
|
||||
"\$00"
|
||||
};
|
||||
|
||||
resource rAlertString (awPatchSuccessful) {
|
||||
"63~The patch has been applied successfully.\n"
|
||||
"You may now assign beeps to \$D2Screen Blanking\$D3"
|
||||
" and \$D2Screen Unblanking\$D3"
|
||||
" using the Sound Control Panel.~^#0"
|
||||
"\$00"
|
||||
};
|
||||
|
||||
// --- rText Templates
|
||||
|
||||
resource rText (TXT_00000004) {
|
||||
"Sound Patcher v1.0\n"
|
||||
"by Jim Maricondo\n"
|
||||
"Copyright 1993, DigiSoft Innovations, All rights reserved."
|
||||
"\n\n"
|
||||
"This program is part of DigiSoft Innovations\$D5 Twilight\$CA"
|
||||
"II\$AA screen saver package. Twilight\$CA"
|
||||
"II and all its support files are fully copyrighted work. Please"
|
||||
" support the Apple II by not distributing them, so we can stay i"
|
||||
"n business! II Infinitum!"
|
||||
"\n\n"
|
||||
"Apple\$D5s System 6 Sound control panel does not normally allow you"
|
||||
" to assign sounds to "
|
||||
"\$D2Screen Blanking\$D3 and \$D2Screen Unblanking\$D3"
|
||||
" because System 6 does not come with a screen saver. However, T"
|
||||
"wilight\$CAII takes advantage of these \$D2hidden\$D3"
|
||||
" features. This program makes a simple Apple approved patch"
|
||||
" that allows you to use the Sound control panel to assign sounds"
|
||||
" to these screen saver related events."
|
||||
"\n\n"
|
||||
"To operate this program, select "
|
||||
"\$D2Patch \$C9\$D3"
|
||||
" from the File menu. Find your copy of the Sound control panel "
|
||||
"(usually found in the "
|
||||
"\$D2System:CDevs\$D3"
|
||||
" folder of your boot disk), and click Open. Sound Patcher will "
|
||||
"do the rest! After being patched, you will be able to assign be"
|
||||
"eps to \$D2Screen Blanking\$D3 and \$D2Screen Unblanking.\$D3"
|
||||
" It\$D5s that simple!"
|
||||
"\n\n"
|
||||
"For more help, or information on other DigiSoft products, you ca"
|
||||
"n contact us at:"
|
||||
"\n\n"
|
||||
"\tDigiSoft Innovations\n"
|
||||
"\tP.O. Box 380\n"
|
||||
"\tTrumbull, CT 06611\n"
|
||||
"\t(203) 375-0837"
|
||||
"\n\n"
|
||||
"\tAmerica Online: DigiSoft\n"
|
||||
"\tInternet: digisoft@aol.com\n"
|
||||
"\tDelphi: DYAJIM\n"
|
||||
"\tGEnie: DYA\n"
|
||||
};
|
||||
|
||||
resource rComment (1) {
|
||||
"\n"
|
||||
"Sound Patcher.\n"
|
||||
"Part of DYA\$D5s Twilight\$CAII\$AA Screen Saver Project.\n"
|
||||
"\n"
|
||||
"Twilight\$CAII, the ultimate screen saver for your Apple IIgs. "
|
||||
"Support us, so we can support you, and make Twilight\$CAII even better "
|
||||
"for the future!\n"
|
||||
"\n"
|
||||
"Twilight\$CAII requires System 6. Special thanks to all the fantastic "
|
||||
"people who helped in the creation of this product.\n"
|
||||
"\n"
|
||||
"Twilight II: A quality DYA product, from DigiSoft Innovations. "
|
||||
"Support the II: do not distribute any parts of Twilight II! "
|
||||
"II Infinitum!"
|
||||
// "\n"
|
||||
};
|
BIN
source/twilight/phantom/Effects/Blank
Normal file
BIN
source/twilight/phantom/Effects/Blank
Normal file
Binary file not shown.
52
source/twilight/phantom/Effects/Blankers.Docs
Normal file
52
source/twilight/phantom/Effects/Blankers.Docs
Normal file
@ -0,0 +1,52 @@
|
||||
Scott's Phantasm Modules
|
||||
Version 1.0
|
||||
by Scott Walker
|
||||
written in Orca/C
|
||||
|
||||
What is it?
|
||||
This archive contains five different modules for the Phantasm screen saver CDev.
|
||||
Phantasm is part of the Signature package put out by Q-Labs.
|
||||
|
||||
How to install it
|
||||
1) Open up the Control Panel NDA and open the Phantasm CDev.
|
||||
2) Click the Add Button.
|
||||
3) Select the blanker module you wish to install.
|
||||
4) Type in the name you wish it to have.
|
||||
5) The name should now appear selected in the list of blankers.
|
||||
|
||||
The Modules
|
||||
Bounce - A ball bounces in a parabolic path around the screen. Color changes
|
||||
every 12 bounces or so.
|
||||
Trifly - Three triangles colored red, yellow, and blue bounce around the screen.
|
||||
Wormz - A colored worm is generated until it goes off the screen. Then it
|
||||
it changes color and stars again.
|
||||
Stars - 75 stars are displayed in blue,gray,white, and light blue then are
|
||||
shifted randomly about the screen.
|
||||
Snake - A gradient colored snake bounces around the screen. Color changes about
|
||||
every 30 seconds.
|
||||
|
||||
Notes
|
||||
1) Sorry about the lack of options, but I tried for five hours and I still can't get
|
||||
the @#&%# things to work! However, I still think the modules turned out well.
|
||||
2) Also, Bounce and Trifly have noticble flicker (I'm not much of an animation
|
||||
person). This is reduced, however, if you have a ZipGS or TranswarpGS.
|
||||
|
||||
Other Important Stuff
|
||||
Hopefully I'll release updates when I figure out how to include options.
|
||||
|
||||
This is FREEWARE! Stick anywhere you want as long as you don't a) change it,
|
||||
b) say you wrote it, or c) sell it.
|
||||
|
||||
Send any comments to:
|
||||
AOL : Scottwalk1
|
||||
Internet : dante@carina.unm.edu
|
||||
cs1walker@apsicc.aps.edu
|
||||
|
||||
Thanks to D. Proni for releasing the info on how to program Phantasm modules,
|
||||
and to GS+ Magazine for printing it. (Hint: if you haven't picked up a copy of this
|
||||
magazine, do it!)
|
||||
|
||||
Apple II forever!!
|
||||
|
||||
|
||||
|
BIN
source/twilight/phantom/Effects/Bounce
Normal file
BIN
source/twilight/phantom/Effects/Bounce
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Cosmic.Worm
Normal file
BIN
source/twilight/phantom/Effects/Cosmic.Worm
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/DesktopShuffle
Normal file
BIN
source/twilight/phantom/Effects/DesktopShuffle
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/LINES.1
Normal file
BIN
source/twilight/phantom/Effects/LINES.1
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/LINES.2
Normal file
BIN
source/twilight/phantom/Effects/LINES.2
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/LINES.3
Normal file
BIN
source/twilight/phantom/Effects/LINES.3
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Linear.Lines
Normal file
BIN
source/twilight/phantom/Effects/Linear.Lines
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Lines.4
Normal file
BIN
source/twilight/phantom/Effects/Lines.4
Normal file
Binary file not shown.
15
source/twilight/phantom/Effects/Lines.Dox.Teach
Normal file
15
source/twilight/phantom/Effects/Lines.Dox.Teach
Normal file
@ -0,0 +1,15 @@
|
||||
+-------------------------------------------+
|
||||
| |
|
||||
| |
|
||||
| Cool Lines #2-4 |
|
||||
| by Tim Buchheim |
|
||||
| |
|
||||
| |
|
||||
+-------------------------------------------+
|
||||
|
||||
|
||||
|
||||
These are numbers two, three, and four in the ÒCool LinesÓ series of screen savers by Tim Buchheim. They were written for the Phantasmª screen saver which is part of the Signature GS package from Quality computers, but should also work under Twilight IIª. While they aren't the worldÕs best, they are public domain, so do what you want with them. I only ask that you distribute them with this file. (Or the docs from another ÒCool LinesÓ effect, I just want people to see my name! :) Have fun with them.
|
||||
|
||||
-Tim Buchheim Ô¹Õ
|
||||
(GEnie: T.BUCHHEIM)
|
11
source/twilight/phantom/Effects/Lines.Dox.Text
Normal file
11
source/twilight/phantom/Effects/Lines.Dox.Text
Normal file
@ -0,0 +1,11 @@
|
||||
-------------------------------------------
|
||||
Cool Lines #2-4
|
||||
by Tim Buchheim
|
||||
-------------------------------------------
|
||||
|
||||
|
||||
|
||||
These are numbers two, three, and four in the "Cool Lines" series of screen savers by Tim Buchheim. They were written for the Phantasm screen saver which is part of the Signature GS package from Quality computers, but should also work under Twilight II. While they aren't the world's best, they are public domain, so do what you want with them. I only ask that you distribute them with this file. (Or the docs from another "Cool Lines" effect, I just want people to see my name! :) Have fun with them.
|
||||
|
||||
-Tim Buchheim '¹'
|
||||
(GEnie: T.BUCHHEIM)
|
BIN
source/twilight/phantom/Effects/MagicMolecules
Normal file
BIN
source/twilight/phantom/Effects/MagicMolecules
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/MagicSlash
Normal file
BIN
source/twilight/phantom/Effects/MagicSlash
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Message
Normal file
BIN
source/twilight/phantom/Effects/Message
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Raindrops
Normal file
BIN
source/twilight/phantom/Effects/Raindrops
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/RectangRiot
Normal file
BIN
source/twilight/phantom/Effects/RectangRiot
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/SlimySlugs
Normal file
BIN
source/twilight/phantom/Effects/SlimySlugs
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Snake
Normal file
BIN
source/twilight/phantom/Effects/Snake
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Stars
Normal file
BIN
source/twilight/phantom/Effects/Stars
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Swirl
Normal file
BIN
source/twilight/phantom/Effects/Swirl
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Trifly
Normal file
BIN
source/twilight/phantom/Effects/Trifly
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Warpspeed
Normal file
BIN
source/twilight/phantom/Effects/Warpspeed
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/WebWorld
Normal file
BIN
source/twilight/phantom/Effects/WebWorld
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/Wormz
Normal file
BIN
source/twilight/phantom/Effects/Wormz
Normal file
Binary file not shown.
BIN
source/twilight/phantom/Effects/mondrian
Normal file
BIN
source/twilight/phantom/Effects/mondrian
Normal file
Binary file not shown.
17
source/twilight/phantom/Effects/readme
Normal file
17
source/twilight/phantom/Effects/readme
Normal file
@ -0,0 +1,17 @@
|
||||
Here are four screen saver modules for Phantasm.
|
||||
The first is a simple one, it just blanks out the screen to black. No fancy animations or stuff like that....just a plain black screen. If I get a chance I might go back and rewrite it so that it will fade to a given intensity set by the user.
|
||||
The second one is a Swirl screen saver. It kinda creates spirograph type patterns. Its a bit fancier, but not by much. If you have my first version, please kill it since it contained a bug.
|
||||
The third is a Linear line drawing saver; makes for interesting results.
|
||||
Still pretty simple.
|
||||
The forth one is a bit more bizzare.... the end result is the thing looks like
|
||||
a colorful worm.
|
||||
|
||||
As you can tell, I have no imagination! I have three more modules in the works, which may or may not get finished. All depends on if people want to see them or not. If you have any ideas for screen savers drop me mail or if you have any comments/complaints also feel free to drop me mail.
|
||||
|
||||
Please try and keep the ideas original! I don't need a ton of people asking for Fish or Flying Toasters! (that is if I do get people asking for more, since my first release, I only got one reply! ohh joy!)
|
||||
|
||||
Feel free to do what you wish with em! Use 'em, kill 'em, spead 'em around if you wish. I really don't care.
|
||||
|
||||
mike@pro-calgary.cts.com or
|
||||
mike@griffin.cuc.ab.ca
|
||||
|
26
source/twilight/phantom/makefile
Normal file
26
source/twilight/phantom/makefile
Normal file
@ -0,0 +1,26 @@
|
||||
|
||||
# Twilight II Strobe UNIX MakeFile
|
||||
# by Jim Maricondo
|
||||
# v1.0 - 2/19/93 8:36pm
|
||||
|
||||
# First deal with all the dfork...
|
||||
|
||||
phantom.d.root: phantom.asm phantom.mac 22/t2common.equ 22/dsdb.equ
|
||||
compile +w phantom.asm keep=phantom.d
|
||||
|
||||
phantom.d: phantom.d.root
|
||||
link +w phantom.d keep=phantom.d
|
||||
|
||||
# Now work with the rfork...
|
||||
|
||||
phantom.r: phantom.rez 22/t2common.rez
|
||||
compile phantom.rez keep=phantom.r
|
||||
|
||||
# Now put it together.
|
||||
|
||||
phantom: phantom.r phantom.d
|
||||
duplicate -d phantom.d phantom
|
||||
duplicate -r phantom.r phantom
|
||||
setfile -at $4004 -t $bc phantom -m .
|
||||
duplicate phantom :jim1:system:cdevs:twilight:phantom
|
||||
22:beep
|
BIN
source/twilight/phantom/phantom
Normal file
BIN
source/twilight/phantom/phantom
Normal file
Binary file not shown.
1858
source/twilight/phantom/phantom.asm
Normal file
1858
source/twilight/phantom/phantom.asm
Normal file
File diff suppressed because it is too large
Load Diff
731
source/twilight/phantom/phantom.mac
Normal file
731
source/twilight/phantom/phantom.mac
Normal file
@ -0,0 +1,731 @@
|
||||
MACRO
|
||||
&lab GSStr &GSstring
|
||||
&lab dc i2'L:&GSstring',C'&GSstring'
|
||||
MEND
|
||||
MACRO
|
||||
&lab WordResult
|
||||
&lab phd
|
||||
MEND
|
||||
MACRO
|
||||
&lab LongResult
|
||||
&lab phd
|
||||
phd
|
||||
MEND
|
||||
MACRO
|
||||
&lab name
|
||||
&lab anop
|
||||
aif t:DebugSymbols="G",.begin
|
||||
MEXIT
|
||||
.begin
|
||||
brl pastName&SYSCNT
|
||||
dc i'$7771'
|
||||
dc i1'L:&lab',c'&lab'
|
||||
pastName&SYSCNT anop
|
||||
.pastName
|
||||
MEND
|
||||
MACRO
|
||||
&lab _InitialLoad2
|
||||
&lab ldx #$2011
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _UserShutDown
|
||||
&lab ldx #$1211
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _NewHandle
|
||||
&lab ldx #$0902
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab pullword &SYSOPR
|
||||
&lab ANOP
|
||||
pla
|
||||
AIF C:&SYSOPR=0,.end
|
||||
sta &SYSOPR
|
||||
.end
|
||||
MEND
|
||||
MACRO
|
||||
&lab pushlong &addr,&offset
|
||||
&lab ANOP
|
||||
LCLC &C
|
||||
LCLC &REST
|
||||
&C AMID &addr,1,1
|
||||
AIF "&C"="#",.immediate
|
||||
AIF "&C"="[",.zeropage
|
||||
AIF C:&offset=0,.nooffset
|
||||
AIF "&offset"="s",.stack
|
||||
pushword &addr+2,&offset
|
||||
pushword &addr,&offset
|
||||
MEXIT
|
||||
.nooffset
|
||||
pushword &addr+2
|
||||
pushword &addr
|
||||
MEXIT
|
||||
.immediate
|
||||
&REST AMID &addr,2,L:&addr-1
|
||||
dc I1'$F4',I2'(&REST)|-16'
|
||||
dc I1'$F4',I2'&REST'
|
||||
MEXIT
|
||||
.stack
|
||||
pushword &addr+2,s
|
||||
pushword &addr+2,s
|
||||
MEXIT
|
||||
.zeropage
|
||||
ldy #&offset+2
|
||||
pushword &addr,y
|
||||
ldy #&offset
|
||||
pushword &addr,y
|
||||
MEND
|
||||
MACRO
|
||||
&lab pushword &SYSOPR
|
||||
&lab ANOP
|
||||
AIF C:&SYSOPR=0,.b
|
||||
LCLC &C
|
||||
&C AMID "&SYSOPR",1,1
|
||||
AIF ("&C"="#").AND.(S:LONGA),.immediate
|
||||
lda &SYSOPR
|
||||
pha
|
||||
MEXIT
|
||||
.b
|
||||
pha
|
||||
MEXIT
|
||||
.immediate
|
||||
LCLC &REST
|
||||
LCLA &BL
|
||||
&BL ASEARCH "&SYSOPR"," ",1
|
||||
AIF &BL>0,.a
|
||||
&BL SETA L:&SYSOPR+1
|
||||
.a
|
||||
&REST AMID "&SYSOPR",2,&BL-2
|
||||
dc I1'$F4',I2'&REST'
|
||||
MEND
|
||||
MACRO
|
||||
&lab longm
|
||||
&lab ANOP
|
||||
rep #%00100000
|
||||
longa on
|
||||
MEND
|
||||
MACRO
|
||||
&lab shortm
|
||||
&lab ANOP
|
||||
sep #%00100000
|
||||
longa off
|
||||
MEND
|
||||
macro
|
||||
&lab ~MMStartUp
|
||||
&lab WordResult
|
||||
Tool $0202
|
||||
mend
|
||||
macro
|
||||
&lab ~DisposeHandle &theHandle
|
||||
&lab ph4 &theHandle
|
||||
Tool $1002
|
||||
mend
|
||||
macro
|
||||
&lab ~GetNewID &idTag
|
||||
&lab WordResult
|
||||
ph2 &idTag
|
||||
Tool $2003
|
||||
mend
|
||||
macro
|
||||
&lab Tool &number
|
||||
&lab ldx #&number
|
||||
jsl $E10000
|
||||
mend
|
||||
macro
|
||||
&lab ph2 &addr,&offset
|
||||
&lab anop
|
||||
lclc &char
|
||||
&char amid "&addr",1,1
|
||||
aif "&char"="@",.accumulator
|
||||
aif "&char"="*",.smartmacros
|
||||
aif "&char"="#",.immediate
|
||||
aif "&char"="<",.directPage
|
||||
aif "&char"="[",.zeropage
|
||||
aif C:&offset=0,.nooffset
|
||||
aif "&offset"="s",.stack
|
||||
lda &addr,&offset
|
||||
pha
|
||||
mexit
|
||||
.nooffset
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.stack
|
||||
lda &addr,s
|
||||
pha
|
||||
mexit
|
||||
.smartmacros
|
||||
mexit
|
||||
.accumulator
|
||||
pha
|
||||
mexit
|
||||
.directPage
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pei &addr
|
||||
mexit
|
||||
.immediate
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pea &addr
|
||||
mexit
|
||||
.zeropage
|
||||
aif C:&offset<>0,.zeroPageOff
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.zeroPageOff
|
||||
aif "&offset"="X",.zeroPageReg
|
||||
aif "&offset"="Y",.zeroPageReg
|
||||
aif "&offset"="x",.zeroPageReg
|
||||
aif "&offset"="y",.zeroPageReg
|
||||
ldy #&offset
|
||||
lda &addr,y
|
||||
pha
|
||||
mexit
|
||||
.zeroPageReg
|
||||
lda &addr,&offset
|
||||
pha
|
||||
mend
|
||||
macro
|
||||
&lab ph4 &addr,&offset
|
||||
&lab anop
|
||||
lclc &char
|
||||
&char amid &addr,1,1
|
||||
aif "&char"="@",.registers
|
||||
aif "&char"="*",.smartmacros
|
||||
aif "&char"="#",.immediate
|
||||
aif "&char"="<",.directPage
|
||||
aif "&char"="[",.zeropage
|
||||
aif c:&offset=0,.nooffset
|
||||
aif "&offset"="s",.stack
|
||||
.yesoffset
|
||||
lda &addr+2,&offset
|
||||
pha
|
||||
lda &addr,&offset
|
||||
pha
|
||||
mexit
|
||||
.nooffset
|
||||
lda &addr+2
|
||||
pha
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.stack
|
||||
lda &addr+2,s
|
||||
pha
|
||||
lda &addr,s
|
||||
pha
|
||||
mexit
|
||||
.registers
|
||||
phy
|
||||
phx
|
||||
mexit
|
||||
.smartmacros
|
||||
mexit
|
||||
.immediate
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pea +(&addr)|-16
|
||||
pea &addr
|
||||
mexit
|
||||
.directPage
|
||||
&addr amid &addr,2,L:&addr-1
|
||||
pei &addr+2
|
||||
pei &addr
|
||||
mexit
|
||||
.zeroPage
|
||||
aif C:&offset<>0,.zeroPageOffset
|
||||
ldy #2
|
||||
lda &addr,y
|
||||
pha
|
||||
lda &addr
|
||||
pha
|
||||
mexit
|
||||
.zeroPageOffset
|
||||
aif "&offset"="X",.zeroPageRegX
|
||||
aif "&offset"="Y",.zeroPageRegY
|
||||
aif "&offset"="x",.zeroPageRegX
|
||||
aif "&offset"="y",.zeroPageRegY
|
||||
ldy #&offset+2
|
||||
lda &addr,y
|
||||
pha
|
||||
ldy #&offset
|
||||
lda &addr,y
|
||||
pha
|
||||
mexit
|
||||
.zeroPageRegX
|
||||
lda &addr,&offset
|
||||
tay
|
||||
inx
|
||||
inx
|
||||
lda &addr,&offset
|
||||
pha
|
||||
phy
|
||||
mexit
|
||||
.zeroPageRegY
|
||||
lda &addr,&offset
|
||||
tax
|
||||
iny
|
||||
iny
|
||||
lda &addr,&offset
|
||||
pha
|
||||
phx
|
||||
mend
|
||||
MACRO
|
||||
&lab killLdp
|
||||
&lab pld
|
||||
ply
|
||||
ply
|
||||
MEND
|
||||
MACRO
|
||||
&lab Debug &string
|
||||
aif t:debugSymbols="G",.begin
|
||||
mexit
|
||||
.begin
|
||||
dc i1'$82'
|
||||
dc i2'(L:&string)+3'
|
||||
dc i2'$7771'
|
||||
dc i1'L:&string',C'&string'
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SetCurResourceFile
|
||||
&lab ldx #$111E
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab pulllong &addr1,&addr2
|
||||
&lab ANOP
|
||||
AIF C:&addr1=0,.a
|
||||
AIF C:&addr2=0,.b
|
||||
LCLC &C
|
||||
&C AMID &addr1,1,1
|
||||
AIF "&C"="[",.zeropage
|
||||
pullword &addr1
|
||||
sta &addr2
|
||||
pullword &addr1+2
|
||||
sta &addr2+2
|
||||
MEXIT
|
||||
.a
|
||||
pullword
|
||||
pullword
|
||||
MEXIT
|
||||
.b
|
||||
pullword &addr1
|
||||
pullword &addr1+2
|
||||
MEXIT
|
||||
.zeropage
|
||||
ldy #&addr2
|
||||
pullword &addr1,y
|
||||
ldy #&addr2+2
|
||||
pullword &addr1,y
|
||||
MEND
|
||||
MACRO
|
||||
&lab str &string
|
||||
&lab dc i1'L:&string',C'&string'
|
||||
MEND
|
||||
MACRO
|
||||
DefineStack
|
||||
GBLA &DummyPC
|
||||
&DummyPC SETA 1
|
||||
MEND
|
||||
MACRO
|
||||
&lab BYTE
|
||||
&lab equ &DummyPC
|
||||
&DummyPC SETA &DummyPC+1
|
||||
MEND
|
||||
MACRO
|
||||
&lab WORD
|
||||
&lab equ &DummyPC
|
||||
&DummyPC SETA &DummyPC+2
|
||||
MEXIT
|
||||
MEND
|
||||
MACRO
|
||||
&lab LONG
|
||||
&lab equ &DummyPC
|
||||
&DummyPC SETA &DummyPC+4
|
||||
MEND
|
||||
MACRO
|
||||
&lab BLOCK &Value
|
||||
AIF C:&lab=0,.skiplab
|
||||
&lab equ &DummyPC
|
||||
.skiplab
|
||||
&DummyPC SETA &DummyPC+&Value
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SFShutDown
|
||||
&lab ldx #$0317
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _DisposeControl
|
||||
&lab ldx #$0A10
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _HideControl
|
||||
&lab ldx #$0E10
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _NewControl2
|
||||
&lab ldx #$3110
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _PtrToHand
|
||||
&lab ldx #$2802
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SetHandleSize
|
||||
&lab ldx #$1902
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SFGetFile2
|
||||
&lab ldx #$0E17
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SFStartUp
|
||||
&lab ldx #$0217
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _CompileText
|
||||
&lab ldx #$600E
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _AddResource
|
||||
&lab ldx #$0C1E
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _DetachResource
|
||||
&lab ldx #$181E
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _RemoveResource
|
||||
&lab ldx #$0F1E
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~GetCtlHandleFromID &ctlWindowPtr,&ctlID
|
||||
&lab LongResult
|
||||
ph4 &ctlWindowPtr
|
||||
ph4 &ctlID
|
||||
Tool $3010
|
||||
mend
|
||||
macro
|
||||
&lab ~GetHandleSize &theHandle
|
||||
&lab LongResult
|
||||
ph4 &theHandle
|
||||
Tool $1802
|
||||
mend
|
||||
macro
|
||||
&lab ~HLock &theHandle
|
||||
&lab ph4 &theHandle
|
||||
Tool $2002
|
||||
mend
|
||||
macro
|
||||
&lab ~NewHandle &blockSize,&userID,&attributes,&locationPtr
|
||||
&lab LongResult
|
||||
ph4 &blockSize
|
||||
ph2 &userID
|
||||
ph2 &attributes
|
||||
ph4 &locationPtr
|
||||
Tool $0902
|
||||
mend
|
||||
macro
|
||||
&lab ~GetCurResourceFile
|
||||
&lab WordResult
|
||||
Tool $121E
|
||||
mend
|
||||
macro
|
||||
&lab ~LoadResource &resourceType,&resourceID
|
||||
&lab LongResult
|
||||
ph2 &resourceType
|
||||
ph4 &resourceID
|
||||
Tool $0E1E
|
||||
mend
|
||||
macro
|
||||
&lab ~ReleaseResource &purgeLevel,&resourceType,&resourceID
|
||||
&lab ph2 &purgeLevel
|
||||
ph2 &resourceType
|
||||
ph4 &resourceID
|
||||
Tool $171E
|
||||
mend
|
||||
macro
|
||||
&lab ~SetCurResourceFile &fileID
|
||||
&lab ph2 &fileID
|
||||
Tool $111E
|
||||
mend
|
||||
macro
|
||||
&lab ~UniqueResourceID &IDRange,&resourceType
|
||||
&lab LongResult
|
||||
ph2 &IDRange
|
||||
ph2 &resourceType
|
||||
Tool $191E
|
||||
mend
|
||||
macro
|
||||
&lab ~UpdateResourceFile &fileID
|
||||
&lab ph2 &fileID
|
||||
Tool $0D1E
|
||||
mend
|
||||
macro
|
||||
&lab ~SFStatus
|
||||
&lab WordResult 0
|
||||
Tool $0617
|
||||
mend
|
||||
macro
|
||||
&lab ~LoadOneTool &toolNumber,&minVersion
|
||||
&lab ph2 &toolNumber
|
||||
ph2 &minVersion
|
||||
Tool $0F01
|
||||
mend
|
||||
MACRO
|
||||
&lab makeDP
|
||||
&lab phd
|
||||
tsc
|
||||
tcd
|
||||
MEND
|
||||
macro
|
||||
&lab ~RMLoadNamedResource &rType,&namePtr
|
||||
&lab LongResult
|
||||
PushWord &rType
|
||||
PushLong &namePtr
|
||||
Tool $2C1E
|
||||
mend
|
||||
macro
|
||||
&lab ~RMFindNamedResource &rType,&namePtr,&fileNumPtr
|
||||
&lab LongResult
|
||||
PushWord &rType
|
||||
PushLong &namePtr
|
||||
PushLong &fileNumPtr
|
||||
Tool $2A1E
|
||||
mend
|
||||
MACRO
|
||||
&lab _RMSetResourceName
|
||||
&lab ldx #$2D1E
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~HUnlock &theHandle
|
||||
&lab ph4 &theHandle
|
||||
Tool $2202
|
||||
mend
|
||||
macro
|
||||
&lab ~UnloadOneTool &toolNumber
|
||||
&lab ph2 &toolNumber
|
||||
Tool $1001
|
||||
mend
|
||||
MACRO
|
||||
&lab _SetHandleId
|
||||
&lab ldx #$3002
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~GetCurResourceApp
|
||||
&lab wordresult
|
||||
Tool $141E
|
||||
mend
|
||||
macro
|
||||
&lab handle
|
||||
&lab ds 4
|
||||
mend
|
||||
MACRO
|
||||
&lab _GetPrefixGS ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$200A"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SetPrefixGS ¶ms
|
||||
&lab jsl $E100A8
|
||||
dc i2"$2009"
|
||||
dc i4"¶ms"
|
||||
MEND
|
||||
macro
|
||||
&lab ~SetHandleSize &newSize,&theHandle
|
||||
&lab ph4 &newSize
|
||||
ph4 &theHandle
|
||||
Tool $1902
|
||||
mend
|
||||
macro
|
||||
&lab PrefixRecGS ¶meters
|
||||
lcla &pCount
|
||||
&pCount seta c:¶meters
|
||||
&lab anop
|
||||
&lab._pCount dc i2'&pCount'
|
||||
&lab._prefixNum dc i2'¶meters(1)'
|
||||
&lab._prefix dc i4'¶meters(2)'
|
||||
mend
|
||||
MACRO
|
||||
&lab _HLock
|
||||
&lab ldx #$2002
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~AlertWindow &alertFlags,&subStrPtr,&alertStrRef
|
||||
&lab WordResult
|
||||
ph2 &alertFlags
|
||||
ph4 &subStrPtr
|
||||
ph4 &alertStrRef
|
||||
Tool $590E
|
||||
mend
|
||||
macro
|
||||
&lab ~InitCursor
|
||||
&lab Tool $CA04
|
||||
mend
|
||||
MACRO
|
||||
&lab _HexIt
|
||||
&lab ldx #$2A0B
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&LAB JNE &BP
|
||||
&LAB BEQ *+5
|
||||
BRL &BP
|
||||
MEND
|
||||
macro
|
||||
&lab ~DeleteID &userID
|
||||
&lab ph2 &userID
|
||||
Tool $2103
|
||||
mend
|
||||
macro
|
||||
&lab ~HexIt &intValue
|
||||
&lab LongResult
|
||||
ph2 &intValue
|
||||
Tool $2A0B
|
||||
mend
|
||||
MACRO
|
||||
&LAB JEQ &BP
|
||||
&LAB BNE *+5
|
||||
BRL &BP
|
||||
MEND
|
||||
macro
|
||||
&lab ~RefreshDesktop &redrawRect
|
||||
&lab ph4 &redrawRect
|
||||
Tool $390E
|
||||
mend
|
||||
macro
|
||||
&lab ~ReadMouse
|
||||
&lab WordResult
|
||||
WordResult
|
||||
WordResult
|
||||
Tool $1703
|
||||
mend
|
||||
MACRO
|
||||
&lab _DisposeHandle
|
||||
&lab ldx #$1002
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _HideCursor
|
||||
&lab ldx #$9004
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _ShowCursor
|
||||
&lab ldx #$9104
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _HiliteControl
|
||||
&lab ldx #$1110
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab longmx
|
||||
&lab ANOP
|
||||
rep #%00110000
|
||||
longa on
|
||||
longi on
|
||||
MEND
|
||||
MACRO
|
||||
&lab shortmx
|
||||
&lab ANOP
|
||||
sep #%00110000
|
||||
longa off
|
||||
longi off
|
||||
MEND
|
||||
MACRO
|
||||
&lab _SetPort
|
||||
&lab ldx #$1B04
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~ClosePort &grafPort
|
||||
&lab ph4 &grafPort
|
||||
Tool $1A04
|
||||
mend
|
||||
macro
|
||||
&lab ~GetPort
|
||||
&lab LongResult
|
||||
Tool $1C04
|
||||
mend
|
||||
macro
|
||||
&lab ~OpenPort &resultPortPtr
|
||||
&lab ph4 &resultPortPtr
|
||||
Tool $1804
|
||||
mend
|
||||
macro
|
||||
&lab ~SetPort &portPtr
|
||||
&lab ph4 &portPtr
|
||||
Tool $1B04
|
||||
mend
|
||||
macro
|
||||
&lab _SendRequest
|
||||
&lab ldx #$1c01
|
||||
jsl $E10000
|
||||
mend
|
||||
macro
|
||||
&lab ~GetMasterSCB
|
||||
&lab WordResult
|
||||
Tool $1704
|
||||
mend
|
||||
MACRO
|
||||
&lab _SetMasterSCB
|
||||
&lab ldx #$1604
|
||||
jsl $E10000
|
||||
MEND
|
||||
MACRO
|
||||
&lab _HandToHand
|
||||
&lab ldx #$2A02
|
||||
jsl $E10000
|
||||
MEND
|
||||
macro
|
||||
&lab ~SetHandleId &newID,&handle
|
||||
&lab WordResult
|
||||
PushWord &newID
|
||||
PushLong &handle
|
||||
Tool $3002
|
||||
mend
|
||||
macro
|
||||
&lab errorbrk &op
|
||||
&lab anop
|
||||
aif debugCode=1,.doit
|
||||
mexit
|
||||
.doit
|
||||
bcc *+4
|
||||
aif c:&op=1,.value
|
||||
brk $BB
|
||||
mexit
|
||||
.value
|
||||
brk &op
|
||||
mend
|
||||
MACRO
|
||||
&lab ename
|
||||
&lab entry
|
||||
aif t:DebugSymbols="G",.begin
|
||||
MEXIT
|
||||
.begin
|
||||
brl pastName&SYSCNT
|
||||
dc i'$7771'
|
||||
dc i1'L:&lab',c'&lab'
|
||||
pastName&SYSCNT anop
|
||||
.pastName
|
||||
MEND
|
210
source/twilight/phantom/phantom.rez
Normal file
210
source/twilight/phantom/phantom.rez
Normal file
@ -0,0 +1,210 @@
|
||||
|
||||
#include "types.rez"
|
||||
#include "22:t2common.rez"
|
||||
|
||||
// --- type $8006 defines
|
||||
#define PSTR_0000000E $0000000E
|
||||
#define PSTR_0000000F $0000000F
|
||||
#define PSTR_00000010 $00000010
|
||||
#define PSTR_00000011 $00000011
|
||||
#define PSTR_00000012 $00000012
|
||||
#define PSTR_000000FC $000000FC
|
||||
|
||||
resource rT2ModuleFlags (moduleFlags) {
|
||||
fLoadSetupBoot +
|
||||
fSetup, // module flags
|
||||
$01, // enabled flag (unimplemented)
|
||||
$0110, // minimum T2 version required
|
||||
NIL, // reserved
|
||||
"Phantom" // module name
|
||||
};
|
||||
|
||||
// --- About text resource
|
||||
|
||||
resource rTextForLETextBox2 (moduleMessage) {
|
||||
TBLeftJust
|
||||
TBBackColor TBColorF
|
||||
TBForeColor TBColor4
|
||||
"Phantom"
|
||||
TBForeColor TBColor1
|
||||
" runs all effects for the Phantasm\$AA screen saver from QLabs..\n"
|
||||
"Some effects may not \$D2demo\$D3 correctly. The save button saves the "
|
||||
"selected effect only."
|
||||
};
|
||||
|
||||
// --- Version resource
|
||||
|
||||
resource rVersion (moduleVersion) {
|
||||
{1,0,0,release,0}, // Version
|
||||
verUS, // US Version
|
||||
"T2 Phantom Module", // program's name
|
||||
"By Jim Maricondo & Derek Young\n"
|
||||
"Copyright 1993, Jim Maricondo." // copyright notice
|
||||
};
|
||||
|
||||
// --- About icon resource
|
||||
|
||||
resource rIcon (moduleIcon) {
|
||||
$8000, // kind
|
||||
$0014, // height
|
||||
$0016, // width
|
||||
|
||||
$"F00000000000000000000F"
|
||||
$"0FFFFFFFFF44FFFFFFFFF0"
|
||||
$"0F00002F44FF44EE0000F0"
|
||||
$"0F0EEEC4FF4FF447EEE0F0"
|
||||
$"0F0EEE4FFFCFFFC7EEE0F0"
|
||||
$"0F0EE4FFF4444FC4EEE0F0"
|
||||
$"0F0EE4F44440444F4EE0F0"
|
||||
$"0F0EE4F4F4444FFF4EE0F0"
|
||||
$"0F0EEEC7FF44FFF4EEE0F0"
|
||||
$"0F0EEEC4FFFC4F47EEE0F0"
|
||||
$"0F0EEEE5FFFFFFFEEEE0F0"
|
||||
$"0F00002F44444F200000F0"
|
||||
$"0FFFFFFFFFFFFFFFFAFFF0"
|
||||
$"C000000000000000000003"
|
||||
$"F0FFFFFFFFFFFFFFFFFF0F"
|
||||
$"F0FFFFFFFFFFFFFFFFFF0F"
|
||||
$"F0FF4AFFFFFFFFFFFFFF0F"
|
||||
$"F0CCCCCCCCCCCCCCCCCC0F"
|
||||
$"F0FFFFFFFFFFFFFFFAFF0F"
|
||||
$"F00000000000000000000F",
|
||||
|
||||
$"0FFFFFFFFFFFFFFFFFFFF0"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"FFFFFFFFFFFFFFFFFFFFFF"
|
||||
$"0FFFFFFFFFFFFFFFFFFFF0"
|
||||
$"0FFFFFFFFFFFFFFFFFFFF0"
|
||||
$"0FFFFFFFFFFFFFFFFFFFF0"
|
||||
$"0FFFFFFFFFFFFFFFFFFFF0"
|
||||
$"0FFFFFFFFFFFFFFFFFFFF0"
|
||||
$"0FFFFFFFFFFFFFFFFFFFF0";
|
||||
};
|
||||
|
||||
|
||||
|
||||
// --- Control List Definitions
|
||||
|
||||
resource rControlList (1) {
|
||||
{
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
// 4,
|
||||
5,
|
||||
6,
|
||||
};
|
||||
};
|
||||
|
||||
// --- Control Templates
|
||||
|
||||
resource rControlTemplate (1) {
|
||||
1, // ID
|
||||
{ 62,178, 74,316}, // rect
|
||||
simpleButtonControl {{
|
||||
$0000, // flag
|
||||
$3002, // moreFlags
|
||||
NIL, // refCon
|
||||
PSTR_0000000E, // titleRef
|
||||
0, // colorTableRef
|
||||
{"E","e",$0100,$0100} // key equivalents
|
||||
}};
|
||||
};
|
||||
|
||||
resource rControlTemplate (2) {
|
||||
2, // ID
|
||||
{ 43,178, 55,318}, // rect
|
||||
simpleButtonControl {{
|
||||
$0000, // flag
|
||||
$3002, // moreFlags
|
||||
NIL, // refCon
|
||||
PSTR_0000000F, // titleRef
|
||||
0, // colorTableRef
|
||||
{"C","c",$0100,$0100} // key equivalents
|
||||
}};
|
||||
};
|
||||
|
||||
resource rControlTemplate (3) {
|
||||
3, // ID
|
||||
{ 28,178, 40,318}, // rect
|
||||
simpleButtonControl {{
|
||||
$0000, // flag
|
||||
$3002, // moreFlags
|
||||
NIL, // refCon
|
||||
PSTR_00000010, // titleRef
|
||||
0, // colorTableRef
|
||||
{"D","d",$0100,$0100} // key equivalents
|
||||
}};
|
||||
};
|
||||
|
||||
resource rControlTemplate (4) {
|
||||
4, // ID
|
||||
{ 81, 24-2,127,329}, // rect
|
||||
statTextControl {{
|
||||
$0000, // flag
|
||||
$1002, // moreFlags
|
||||
NIL, // refCon
|
||||
1 // textRef
|
||||
}};
|
||||
};
|
||||
|
||||
resource rControlTemplate (5) {
|
||||
5, // ID
|
||||
{ 38-4, 14, 71-4,158}, // rect
|
||||
iconButtonControl {{
|
||||
$000C, // flag
|
||||
$1022, // moreFlags
|
||||
NIL, // refCon
|
||||
moduleIcon, // iconRef
|
||||
PSTR_00000011, // titleRef
|
||||
NIL, // colorTableRef
|
||||
$0000 // displayMode
|
||||
}};
|
||||
};
|
||||
|
||||
resource rControlTemplate (6) {
|
||||
6, // ID
|
||||
{ 58,176, 59,320}, // rect
|
||||
rectangleControl {{
|
||||
$FF01, // flag (%01 = gray pattern)
|
||||
fCtlProcNotPtr, // moreFlags (required values)
|
||||
NIL // refCon
|
||||
}};
|
||||
};
|
||||
|
||||
// --- rPString Templates
|
||||
|
||||
resource rPString (PSTR_0000000E) {
|
||||
"Select Effect..."
|
||||
};
|
||||
|
||||
resource rPString (PSTR_0000000F) {
|
||||
"Configure"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000010) {
|
||||
"Demo"
|
||||
};
|
||||
|
||||
resource rPString (PSTR_00000011) {
|
||||
"Phantom Options"
|
||||
};
|
||||
|
||||
// --- rTextForLETextBox2 Templates
|
||||
|
||||
resource rTextForLETextBox2 (1) {
|
||||
TBLeftJust
|
||||
TBLeftMargin "\$00\$00"
|
||||
TBStyleItalic "Active\$CAEffect:" TBStylePlain " \$D2*0\$D3"
|
||||
};
|
Loading…
x
Reference in New Issue
Block a user