lots of learning the last 24h

trying to now figure out how to modeset properly for video buffer
This commit is contained in:
David Stancu 2018-01-16 19:52:31 -05:00
parent 38e1cc10d4
commit 71df806253
65 changed files with 10519 additions and 25 deletions

View File

@ -29,8 +29,18 @@ There are a lot of good materials out there: here is what I used to make this ga
- [IIgs Hardware Architecture](http://www.goldstarsoftware.com/applesite/Documentation/AppleIIgsHardwareReferenceManual.PDF)
- p. 74 has a memory map
- [Scanlon's IIgs Assembly Programming](ftp://ftp.apple.asimov.net/pub/apple_II/documentation/programming/65816_gs/Apple%20IIGS%20Assembly%20Language%20Programming.pdf)
- Tremendously useful reference for QuickDraw and some tools
- [Programming the 65816 and 65xx family](https://apple2.gs/downloads/Programmanual.pdf)
- Official WDC manual.
- ["PEI Slam" fast SHR rendering](https://retrocomputing.stackexchange.com/questions/52/how-do-i-use-shadowed-memory-to-render-super-hi-res-quickly)
- [Changing ProDOS file types with Cadius](https://groups.google.com/forum/#!topic/comp.sys.apple2/dqcTdS9epdQ)
- [6502 opcode list](http://www.defence-force.org/computing/oric/coding/annexe_2/)
- [BrutalDeluxe GS/OS internals (VERY USEFUL)](http://brutaldeluxe.fr/documentation/gsos/Apple_IIgs_GSOS_internals_v1.pdf)
- [65816 opcode list](http://www.intel-assembler.it/portale/5/65816_guide/opcode_reference.asp)
- [BrutalDeluxe GS/OS internals (VERY USEFUL)](http://brutaldeluxe.fr/documentation/gsos/Apple_IIgs_GSOS_internals_v1.pdf)
- [Apple II 6502 for beginners](http://www.appleoldies.ca/anix/Using-6502-Assembly-Language-by-Randy-Hyde.pdf)
- Has practical examples for reading user input, etc.
- [System monitor reference](http://apple2.info/wiki/index.php?title=System_Monitor)
- This is the humbling moment I take back every bad thing I ever said about GDB in my life ever.
- [SNES CPU overview, same CPU, nice insights](https://github.com/michielvoo/SNES/wiki/CPU)
- [SNES opcode list](http://wiki.metroidconstruction.com/doku.php?id=super:technical_information:asm_mnemonics)
- [65816 primer](http://softpixel.com/~cwright/sianse/docs/65816NFO.HTM)

BIN
blankdisk.po Normal file

Binary file not shown.

55
src/macro/ACE.MACS.S Normal file
View File

@ -0,0 +1,55 @@
* ACE tool macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_ACEBootInit MAC
Tool $11D
<<<
~ACEStartUp MAC
PHW ]1
_ACEStartUp MAC
Tool $21D
<<<
_ACEShutDown MAC
Tool $31D
<<<
~ACEVersion MAC
PHA
_ACEVersion MAC
Tool $41D
<<<
_ACEReset MAC
Tool $51D
<<<
~ACEStatus MAC
PHA
_ACEStatus MAC
Tool $61D
<<<
~ACEInfo MAC
P2SW ]1
_ACEInfo MAC
Tool $71D
<<<
~ACECompress MAC
PxL ]1;]2;]3;]4
PxW ]5;]6
_ACECompress MAC
Tool $91D
<<<
~ACEExpand MAC
PxL ]1;]2;]3;]4
PxW ]5;]6
_ACEExpand MAC
Tool $A1D
<<<
_ACECompBegin MAC
Tool $B1D
<<<
_ACEExpBegin MAC
Tool $C1D
<<<

90
src/macro/ADB.MACS.S Normal file
View File

@ -0,0 +1,90 @@
* Desktop Bus tool macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_ADBBootInit MAC
Tool $109
<<<
_ADBStartUp MAC
Tool $209
<<<
_ADBShutDown MAC
Tool $309
<<<
_ADBVersion MAC
Tool $409
<<<
_ADBReset MAC
Tool $509
<<<
~ADBStatus MAC
PHA
_ADBStatus MAC
Tool $609
<<<
~SendInfo MAC
PHW ]1
PHLW ]2;]3
_SendInfo MAC
Tool $909
<<<
~ReadKeyMicroData MAC
PHW ]1
PHLW ]2;]3
_ReadKeyMicroData MAC
Tool $A09
<<<
~ReadKeyMicroMem MAC
PxL ]1;]2
PHW ]3
_ReadKeyMicroMem MAC
Tool $B09
<<<
~AsyncADBReceive MAC
PHLW ]1;]2
_AsyncADBReceive MAC
Tool $D09
<<<
~SyncADBReceive MAC
PHW ]1
PHLW ]2;]3
_SyncADBReceive MAC
Tool $E09
<<<
_AbsOn MAC
Tool $F09
<<<
_AbsOff MAC
Tool $1009
<<<
~ReadAbs MAC
PHA
_ReadAbs MAC
Tool $1109
<<<
~GetAbsScale MAC
PHL ]1
_GetAbsScale MAC
Tool $1209
<<<
~SetAbsScale MAC
PHL ]1
_SetAbsScale MAC
Tool $1309
<<<
~SRQPoll MAC
PHLW ]1;]2
_SRQPoll MAC
Tool $1409
<<<
~SRQRemove MAC
PHW ]1
_SRQRemove MAC
Tool $1509
<<<
_ClearSRQTable MAC
Tool $1609
<<<

283
src/macro/CTL.MACS.S Normal file
View File

@ -0,0 +1,283 @@
* Control Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_CtlBootInit MAC
Tool $110
<<<
~CtlStartUp MAC
PxW ]1;]2
_CtlStartUp MAC
_InitCtrlMgr MAC
Tool $210
<<<
_CtlShutDown MAC
_CtrlShutDown MAC
Tool $310
<<<
~CtlVersion MAC
PHA
_CtlVersion MAC
Tool $410
<<<
_CtlReset MAC
Tool $510
<<<
~CtlStatus MAC
PHA
_CtlStatus MAC
Tool $610
<<<
_NewControl MAC
Tool $910
<<<
~DisposeControl MAC
PHL ]1
_DisposeControl MAC
Tool $A10
<<<
~KillControls MAC
PHL ]1
_KillControls MAC
Tool $B10
<<<
~SetCtlTitle MAC
PxL ]1;]2
_SetCtlTitle MAC
Tool $C10
<<<
~GetCtlTitle MAC
P2SL ]1
_GetCtlTitle MAC
Tool $D10
<<<
~HideControl MAC
PHL ]1
_HideControl MAC
Tool $E10
<<<
~ShowControl MAC
PHL ]1
_ShowControl MAC
Tool $F10
<<<
~DrawControls MAC
PHL ]1
_DrawControls MAC
Tool $1010
<<<
~HiliteControl MAC
PHWL ]1;]2
_HiliteControl MAC
Tool $1110
<<<
_CtlNewRes MAC
Tool $1210
<<<
~FindControl MAC
PHA
PHLW ]1;]2
PHWL ]3;]4
_FindControl MAC
Tool $1310
<<<
~TestControl MAC
P1SW ]1
PHWL ]2;]3
_TestControl MAC
Tool $1410
<<<
~TrackControl MAC
PHA
PxW ]1;]2
PxL ]3;]4
_TrackControl MAC
Tool $1510
<<<
~MoveControl MAC
PxW ]1;]2
PHL ]3
_MoveControl MAC
Tool $1610
<<<
~DragControl MAC
PxW ]1;]2
PxL ]3;]4
PHWL ]5;]6
_DragControl MAC
Tool $1710
<<<
~SetCtlIcons MAC
P2SL ]1
_SetCtlIcons MAC
Tool $1810
<<<
~SetCtlValue MAC
PHWL ]1;]2
_SetCtlValue MAC
Tool $1910
<<<
~GetCtlValue MAC
P1SL ]1
_GetCtlValue MAC
Tool $1A10
<<<
~SetCtlParams MAC
PxW ]1;]2
PHL ]3
_SetCtlParams MAC
Tool $1B10
<<<
~GetCtlParams MAC
P2SL ]1
_GetCtlParams MAC
Tool $1C10
<<<
~DragRect MAC
P2SL ]1
PHLW ]2;]3
PHWL ]4;]5
PxL ]6;]7
PHW ]8
_DragRect MAC
Tool $1D10
<<<
~GrowSize MAC
PHS 2
_GrowSize MAC
Tool $1E10
<<<
~GetCtlDpage MAC
PHA
_GetCtlDpage MAC
Tool $1F10
<<<
~SetCtlAction MAC
PxL ]1;]2
_SetCtlAction MAC
Tool $2010
<<<
~GetCtlAction MAC
P2SL ]1
_GetCtlAction MAC
Tool $2110
<<<
~SetCtlRefCon MAC
PxL ]1;]2
_SetCtlRefCon MAC
Tool $2210
<<<
~GetCtlRefCon MAC
P2SL ]1
_GetCtlRefCon MAC
Tool $2310
<<<
~EraseControl MAC
PHL ]1
_EraseControl MAC
Tool $2410
<<<
~DrawOneCtl MAC
PHL ]1
_DrawOneCtl MAC
Tool $2510
<<<
~FindTargetCtl MAC
PHS 2
_FindTargetCtl MAC
Tool $2610
<<<
~MakeNextCtlTarget MAC
PHS 2
_MakeNextCtlTarget MAC
Tool $2710
<<<
~MakeThisCtlTarget MAC
PHL ]1
_MakeThisCtlTarget MAC
Tool $2810
<<<
~SendEventToCtl MAC
P1SW ]1
PxL ]2;]3
_SendEventToCtl MAC
Tool $2910
<<<
~GetCtlID MAC
P2SL ]1
_GetCtlID MAC
Tool $2A10
<<<
~SetCtlID MAC
PxL ]1;]2
_SetCtlID MAC
Tool $2B10
<<<
~CallCtlDefProc MAC
PHLW ]1;]2
PHL ]3
_CallCtlDefProc MAC
Tool $2C10
<<<
~NotifyCtls MAC
PxW ]1;]2
PxL ]3;]4
_NotifyCtls MAC
Tool $2D10
<<<
~GetCtlMoreFlags MAC
P1SL ]1
_GetCtlMoreFlags MAC
Tool $2E10
<<<
~SetCtlMoreFlags MAC
PHWL ]1;]2
_SetCtlMoreFlags MAC
Tool $2F10
<<<
~GetCtlHandleFromID MAC
PHS 2
PxL ]1;]2
_GetCtlHandleFromID MAC
Tool $3010
<<<
~NewControl2 MAC
P2SL ]1
PHWL ]2;]3
_NewControl2 MAC
Tool $3110
<<<
~CMLoadResource MAC
P2SW ]1
PHL ]2
_CMLoadResource MAC
Tool $3210
<<<
~CMReleaseResource MAC
PHWL ]1;]2
_CMReleaseResource MAC
Tool $3310
<<<
~SetCtlParamPtr MAC
PHL ]1
_SetCtlParamPtr MAC
Tool $3410
<<<
~GetCtlParamPtr MAC
PHS 2
_GetCtlParamPtr MAC
Tool $3510
<<<
~InvalCtls MAC
PHL ]1
_InvalCtls MAC
Tool $3710
<<<
~qCtlStartUp MAC
PHW ]1
NextDP ]2;$100
Tool $210
<<<

130
src/macro/DESK.MACS.S Normal file
View File

@ -0,0 +1,130 @@
* Desk Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_DeskBootInit MAC
Tool $105
<<<
_DeskStartUp MAC
Tool $205
<<<
_DeskShutDown MAC
Tool $305
<<<
~DeskVersion MAC
PHA
_DeskVersion MAC
Tool $405
<<<
~DeskStatus MAC
PHA
_DeskStatus MAC
Tool $605
<<<
_SaveScrn MAC
Tool $905
<<<
_RestScrn MAC
Tool $A05
<<<
_SaveAll MAC
Tool $B05
<<<
_RestAll MAC
Tool $C05
<<<
~InstallNDA MAC
PHL ]1
_InstallNDA MAC
Tool $E05
<<<
~InstallCDA MAC
PHL ]1
_InstallCDA MAC
Tool $F05
<<<
_ChooseCDA MAC
Tool $1105
<<<
~SetDAStrPtr MAC
PxL ]1;]2
_SetDAStrPtr MAC
Tool $1305
<<<
~GetDAStrPtr MAC
PHS 2
_GetDAStrPtr MAC
Tool $1405
<<<
~OpenNDA MAC
P1SW ]1
_OpenNDA MAC
Tool $1505
<<<
~CloseNDA MAC
PHW ]1
_CloseNDA MAC
Tool $1605
<<<
~SystemClick MAC
PxL ]1;]2
PHW ]3
_SystemClick MAC
Tool $1705
<<<
~SystemEdit MAC
P1SW ]1
_SystemEdit MAC
Tool $1805
<<<
_SystemTask MAC
Tool $1905
<<<
~SystemEvent MAC
P1SW ]1
PxL ]2;]3;]4
PHW ]5
_SystemEvent MAC
Tool $1A05
<<<
~GetNumNDAs MAC
PHA
_GetNumNDAs MAC
Tool $1B05
<<<
~CloseNDAByWinPtr MAC
PHL ]1
_CloseNDAByWinPtr MAC
Tool $1C05
<<<
_CloseAllNDAs MAC
Tool $1D05
<<<
~FixAppleMenu MAC
PHW ]1
_FixAppleMenu MAC
Tool $1E05
<<<
~AddToRunQ MAC
PHL ]1
_AddToRunQ MAC
Tool $1F05
<<<
~RemoveFromRunQ MAC
PHL ]1
_RemoveFromRunQ MAC
Tool $2005
<<<
~RemoveCDA MAC
PHL ]1
_RemoveCDA MAC
Tool $2105
<<<
~RemoveNDA MAC
PHL ]1
_RemoveNDA MAC
Tool $2205
<<<

284
src/macro/DIALOG.MACS.S Normal file
View File

@ -0,0 +1,284 @@
* Dialog Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_DialogBootInit MAC
Tool $115
<<<
~DialogStartUp MAC
PHW ]1
_DialogStartUp MAC
Tool $215
<<<
_DialogShutDown MAC
Tool $315
<<<
~DialogVersion MAC
PHA
_DialogVersion MAC
Tool $415
<<<
_DialogReset MAC
Tool $515
<<<
~DialogStatus MAC
PHA
_DialogStatus MAC
Tool $615
<<<
~ErrorSound MAC
PHL ]1
_ErrorSound MAC
Tool $915
<<<
~NewModalDialog MAC
P2SL ]1
PHWL ]2;]3
_NewModalDialog MAC
Tool $A15
<<<
~NewModelessDialog MAC
P2SL ]1
PxL ]2;]3
PHWL ]4;]5
PHL ]6
_NewModelessDialog MAC
Tool $B15
<<<
~CloseDialog MAC
PHL ]1
_CloseDialog MAC
Tool $C15
<<<
~NewDItem MAC
PHLW ]1;]2
PHLW ]3;]4
PHLW ]5;]6
PHWL ]7;]8
_NewDItem MAC
Tool $D15
<<<
~RemoveDItem MAC
PHLW ]1;]2
_RemoveDItem MAC
Tool $E15
<<<
~ModalDialog MAC
P1SL ]1
_ModalDialog MAC
Tool $F15
<<<
~IsDialogEvent MAC
P1SL ]1
_IsDialogEvent MAC
Tool $1015
<<<
~DialogSelect MAC
P1SL ]1
PxL ]2;]3
_DialogSelect MAC
Tool $1115
<<<
~DlgCut MAC
PHL ]1
_DlgCut MAC
Tool $1215
<<<
~DlgCopy MAC
PHL ]1
_DlgCopy MAC
Tool $1315
<<<
~DlgPaste MAC
PHL ]1
_DlgPaste MAC
Tool $1415
<<<
~DlgDelete MAC
PHL ]1
_DlgDelete MAC
Tool $1515
<<<
~DrawDialog MAC
PHL ]1
_DrawDialog MAC
Tool $1615
<<<
~Alert MAC
PHA
PxL ]1;]2
_Alert MAC
Tool $1715
<<<
~StopAlert MAC
PHA
PxL ]1;]2
_StopAlert MAC
Tool $1815
<<<
~NoteAlert MAC
PHA
PxL ]1;]2
_NoteAlert MAC
Tool $1915
<<<
~CautionAlert MAC
PHA
PxL ]1;]2
_CautionAlert MAC
Tool $1A15
<<<
~ParamText MAC
PxL ]1;]2;]3;]4
_ParamText MAC
Tool $1B15
<<<
~SetDAFont MAC
PHL ]1
_SetDAFont MAC
Tool $1C15
<<<
~GetControlDItem MAC
PHS 2
PHLW ]1;]2
_GetControlDItem MAC
Tool $1E15
<<<
~GetIText MAC
PHL ]1
PHWL ]2;]3
_GetIText MAC
Tool $1F15
<<<
~SetIText MAC
PHL ]1
PHWL ]2;]3
_SetIText MAC
Tool $2015
<<<
~SelectIText MAC
PHL ]1
PxW ]2;]3;]4
_SelectIText MAC
Tool $2115
<<<
~HideDItem MAC
PHLW ]1;]2
_HideDItem MAC
Tool $2215
<<<
~ShowDItem MAC
PHLW ]1;]2
_ShowDItem MAC
Tool $2315
<<<
~FindDItem MAC
PHA
PxL ]1;]2
_FindDItem MAC
Tool $2415
<<<
~UpdateDialog MAC
PxL ]1;]2
_UpdateDialog MAC
Tool $2515
<<<
~GetDItemType MAC
PHA
PHLW ]1;]2
_GetDItemType MAC
Tool $2615
<<<
~SetDItemType MAC
PHW ]1
PHLW ]2;]3
_SetDItemType MAC
Tool $2715
<<<
~GetDItemBox MAC
PHL ]1
PHWL ]2;]3
_GetDItemBox MAC
Tool $2815
<<<
~SetDItemBox MAC
PHL ]1
PHWL ]2;]3
_SetDItemBox MAC
Tool $2915
<<<
~GetFirstDItem MAC
P1SL ]1
_GetFirstDItem MAC
Tool $2A15
<<<
~GetNextDItem MAC
PHA
PHLW ]1;]2
_GetNextDItem MAC
Tool $2B15
<<<
~ModalDialog2 MAC
P2SL ]1
_ModalDialog2 MAC
Tool $2C15
<<<
~GetDItemValue MAC
PHA
PHLW ]1;]2
_GetDItemValue MAC
Tool $2E15
<<<
~SetDItemValue MAC
PHW ]1
PHLW ]2;]3
_SetDItemValue MAC
Tool $2F15
<<<
~GetNewModalDialog MAC
P2SL ]1
_GetNewModalDialog MAC
Tool $3215
<<<
~GetNewDItem MAC
PxL ]1;]2
_GetNewDItem MAC
Tool $3315
<<<
~GetAlertStage MAC
PHA
_GetAlertStage MAC
Tool $3415
<<<
_ResetAlertStage MAC
Tool $3515
<<<
~DefaultFilter MAC
PHA
PxL ]1;]2;]3
_DefaultFilter MAC
Tool $3615
<<<
~GetDefButton MAC
P1SL ]1
_GetDefButton MAC
Tool $3715
<<<
~SetDefButton MAC
PHWL ]1;]2
_SetDefButton MAC
Tool $3815
<<<
~DisableDItem MAC
PHLW ]1;]2
_DisableDItem MAC
Tool $3915
<<<
~EnableDItem MAC
PHLW ]1;]2
_EnableDItem MAC
Tool $3A15
<<<

176
src/macro/DOS.16.MACS.S Normal file
View File

@ -0,0 +1,176 @@
*===============================
* ProDOS-16 macro and equates
*
* Use with syntax:
*
* _CMDNAME PARMADR
*
* where "CMDNAME" is one of the
* following labels and "PARMADR"
* is the label of the parameters
* table to use.
*
*-------------------------------
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
open = $10
read = $12
write = $13
close = $14
_CREATE MAC
DOS16 $01;]1
<<<
_DESTROY MAC
DOS16 $02;]1
<<<
_CHANGE_PATH MAC
DOS16 $04;]1
<<<
_SET_FILE_INFO MAC
DOS16 $05;]1
<<<
_GET_FILE_INFO MAC
DOS16 $06;]1
<<<
_VOLUME MAC
DOS16 $08;]1
<<<
_SET_PREFIX MAC
DOS16 $09;]1
<<<
_SETPREFIX MAC ; alternate name
DOS16 $09;]1
<<<
_GET_PREFIX MAC
DOS16 $0A;]1
<<<
_GETPREFIX MAC ; alternate name
DOS16 $0A;]1
<<<
_CLEAR_BACKUP_BIT MAC
DOS16 $0B;]1
<<<
_OPEN MAC
DOS16 $10;]1
<<<
_NEWLINE MAC
DOS16 $11;]1
<<<
_READ MAC
DOS16 $12;]1
<<<
_WRITE MAC
DOS16 $13;]1
<<<
_CLOSE MAC
DOS16 $14;]1
<<<
_FLUSH MAC
DOS16 $15;]1
<<<
_SET_MARK MAC
DOS16 $16;]1
<<<
_GET_MARK MAC
DOS16 $17;]1
<<<
_SET_EOF MAC
DOS16 $18;]1
<<<
_GET_EOF MAC
DOS16 $19;]1
<<<
_SET_LEVEL MAC
DOS16 $1A;]1
<<<
_GET_LEVEL MAC
DOS16 $1B;]1
<<<
_GET_DIR_ENTRY MAC
DOS16 $1C;]1
<<<
_GET_DEV_NUM MAC
DOS16 $20;]1
<<<
_GET_LAST_DEV MAC
DOS16 $21;]1
<<<
_READ_BLOCK MAC
DOS16 $22;]1
<<<
_WRITE_BLOCK MAC
DOS16 $23;]1
<<<
_FORMAT MAC
DOS16 $24;]1
<<<
_ERASE_DISK MAC
DOS16 $25;]1
<<<
_GET_PATH_NAME MAC
DOS16 $27;]1
<<<
_GET_BOOT_VOL MAC
DOS16 $28;]1
<<<
_QUIT MAC
DOS16 $29;]1
<<<
_GET_VERSION MAC
DOS16 $2A;]1
<<<
_D_INFO MAC
DOS16 $2C;]1
<<<
_ALLOC_INTERRUPT MAC
DOS16 $31;]1
<<<
_DEALLOC_INTERRUPT MAC
DOS16 $32;]1
<<<
DOS16 MAC
JSL $E100A8
DA ]1 ; Change to ]1.$2000 for Class 1 P16 calls.
ADRL ]2
<<<

129
src/macro/DOS.8.MACS.S Normal file
View File

@ -0,0 +1,129 @@
*===============================
* ProDOS-8 macro and equates
*
* Use with syntax:
*
* command PARMADR
*
* where "command" is one of the
* following labels and "PARMADR"
* is the label of the parameters
* table to use.
*
*-------------------------------
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
* MLI call codes:
ALLOC_INTERRUPT MAC
DOS8 $40;]1
<<<
DEALLOC_INTERRUPT MAC
DOS8 $41;]1
<<<
QUIT MAC
DOS8 $65;]1
<<<
READ_BLOCK MAC
DOS8 $80;]1
<<<
WRITE_BLOCK MAC
DOS8 $81;]1
<<<
GET_TIME MAC
DOS8 $82;]1
<<<
CREATE MAC
DOS8 $C0;]1
<<<
DESTROY MAC
DOS8 $C1;]1
<<<
RENAME MAC
DOS8 $C2;]1
<<<
SET_FILE_INFO MAC
DOS8 $C3;]1
<<<
GET_FILE_INFO MAC
DOS8 $C4;]1
<<<
ON_LINE MAC
DOS8 $C5;]1
<<<
SET_PREFIX MAC
DOS8 $C6;]1
<<<
GET_PREFIX MAC
DOS8 $C7;]1
<<<
OPEN MAC
DOS8 $C8;]1
<<<
NEWLINE MAC
DOS8 $C9;]1
<<<
READ MAC
DOS8 $CA;]1
<<<
WRITE MAC
DOS8 $CB;]1
<<<
CLOSE MAC
DOS8 $CC;]1
<<<
FLUSH MAC
DOS8 $CD;]1
<<<
SET_MARK MAC
DOS8 $CE;]1
<<<
GET_MARK MAC
DOS8 $CF;]1
<<<
SET_EOF MAC
DOS8 $D0;]1
<<<
GET_EOF MAC
DOS8 $D1;]1
<<<
SET_BUF MAC
DOS8 $D2;]1
<<<
GET_BUF MAC
DOS8 $D3;]1
<<<
DOS8 MAC
JSR $BF00
DFB ]1
DA ]2
<<<

19
src/macro/E16.ACE.S Normal file
View File

@ -0,0 +1,19 @@
; File: E16.ACE
;
;
; Copyright Apple computer, Inc. 1988
; All Rights Reserved
;
;
aceNoError equ $0 ; Error -
aceIsActive equ $1D01 ; Error -
aceBadDP equ $1D02 ; Error -
aceNotActive equ $1D03 ; Error -
aceNoSuchParam equ $1D04 ; Error -
aceBadMethod equ $1D05 ; Error -
aceBadSrc equ $1D06 ; Error -
aceBadDest equ $1D07 ; Error -
aceDatatOverlap equ $1D08 ; Error -
aceNotImplemented equ $1DFF ; Error -

65
src/macro/E16.ADB.S Normal file
View File

@ -0,0 +1,65 @@
; File: E16.ADB
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
cmndIncomplete equ $0910 ; ADB error - Command not completed.
cantSync equ $0911 ; ADB error - Can't synchronize
adbBusy equ $0982 ; ADB error - Busy (command pending)
devNotAtAddr equ $0983 ; ADB error - Device not present at address
srqListFull equ $0984 ; ADB error - List full
orcRepeatDelay equ $0000 ; Byte - ReadConfigRec - Output byte:
;Repeat Delay/Rate
orcLayoutOrLang equ $0001 ; Byte - ReadConfigRec - Output byte:
;Layout/Lang
orcADBAddr equ $0002 ; Byte - ReadConfigRec - Output byte: ADB
;address - keyboard and mouse.
oxDivide equ $0000 ; Word - ScaleRec -
oyDivide equ $0002 ; Word - ScaleRec -
oxOffset equ $0004 ; Word - ScaleRec -
oyOffset equ $0006 ; Word - ScaleRec -
oxMultiply equ $0008 ; Word - ScaleRec -
oyMultiply equ $000A ; Word - ScaleRec -
oscADBAddr equ $0000 ; Byte - SetConfigRec - keyboard and mouse
oscLayoutOrLang equ $0001 ; Byte - SetConfigRec -
oscRepeatDelay equ $0002 ; Byte - SetConfigRec -
osynchMode equ $0000 ; Byte - SynchRec -
osynchKybdMouseAddr equ $0001 ; Byte - SynchRec -
osynchLayoutOrLang equ $0002 ; Byte - SynchRec -
osynchRepeatDelay equ $0003 ; Byte - SynchRec -
readModes equ $000A ; ReadKeyMicroData -
readConfig equ $000B ; ReadKeyMicroData -
readADBError equ $000C ; ReadKeyMicroData -
readVersionNum equ $000D ; ReadKeyMicroData -
readMicroMem equ $0009 ; ReadKeyMicroMem -
abort equ $0001 ; SendInfo - command
resetKbd equ $0002 ; SendInfo - command
flushKbd equ $0003 ; SendInfo - command
setModes equ $0004 ; SendInfo - 2nd param is pointer to mode byte
clearModes equ $0005 ; SendInfo - 2nd param is pointer to mode Byte
setConfig equ $0006 ; SendInfo - 2nd param is pointer to SetConfigRec
synch equ $0007 ; SendInfo - 2nd param is pointer to SynchRec
writeMicroMem equ $0008 ; SendInfo - 2nd param is pointer to MicroControlMemRec
resetSys equ $0010 ; SendInfo - command
keyCode equ $0011 ; SendInfo - 2nd param is pointer to key code byte.
resetADB equ $0040 ; SendInfo - command
transmitADBBytes equ $0047 ; SendInfo - add number of bytes to this
enableSRQ equ $0050 ; SendInfo - command - ADB address in low nibble
flushADBDevBuf equ $0060 ; SendInfo - command - ADB address in low nibble
disableSRQ equ $0070 ; SendInfo - command - ADB address in low nibble
transmit2ADBBytes equ $0080 ; SendInfo - add ADB address to this
listen equ $0080 ; SendInfo - adbCommand = listen + ( 16 * reg) +
; (adb address)
talk equ $00C0 ; SendInfo - adbCommand = talk + ( 16 * reg) +
; (adb address)

128
src/macro/E16.CONTROL.S Normal file
View File

@ -0,0 +1,128 @@
; File: E16.Control
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
obarOutline equ $00 ; Word - BarColors - color for outlining bar
;, arrows, and thumb
obarNorArrow equ $02 ; Word - BarColors - color of arrows when n
;ot highlighted
obarSelArrow equ $04 ; Word - BarColors - color of arrows when h
;ighlighted
obarArrowBack equ $06 ; Word - BarColors - color of arrow box's
;background
obarNorThumb equ $08 ; Word - BarColors - color of thumb's backg
;round when not highlighted
obarSelThumb equ $0A ; Word - BarColors - color of thumb's backg
;round when highlighted
obarPageRgn equ $0C ; Word - BarColors - color and pattern page
;region: high byte - 1= dither, 0 = solid
obarInactive equ $0E ; Word - BarColors - color of scroll bar's
;interior when inactive
oboxReserved equ $00 ; Word - BoxColors - reserved
oboxNor equ $02 ; Word - BoxColors - color of box when not check
;ed
oboxSel equ $04 ; Word - BoxColors - color of box when checked
oboxTitle equ $06 ; Word - BoxColors - color of check box's titl
;e
obttnOutline equ $00 ; Word - BttnColors - color of outline
obttnNorBack equ $02 ; Word - BttnColors - color of background w
;hen not selected
obttnSelBack equ $04 ; Word - BttnColors - color of background w
;hen selected
obttnNorText equ $06 ; Word - BttnColors - color of title's text
; when not selected
obttnSelText equ $08 ; Word - BttnColors - color of title's text
; when selected
oradReserved equ $00 ; Word - RadioColors - reserved
oradNor equ $02 ; Word - RadioColors - color of radio button whe
;n off
oradSel equ $04 ; Word - RadioColors - color of radio button whe
;n on
oradTitle equ $06 ; Word - RadioColors - color of radio button's
; title text
octlNext equ $00 ; CtlRecHndl - CtlRec - Handle of next control.
octlOwner equ $04 ; GrafPortPtr - CtlRec - Pointer to control's
;window.
octlRect equ $08 ; Rect - CtlRec - Enclosing rectangle.
octlFlag equ $10 ; Byte - CtlRec - Bit flags.
octlHilite equ $11 ; Byte - CtlRec - Highlighted part.
octlValue equ $12 ; Integer - CtlRec - Control's value.
octlProc equ $14 ; Pointer - CtlRec - Control's definition proce
;dure.
octlAction equ $18 ; Pointer - CtlRec - Control's action procedu
;re.
octlData equ $1C ; Longint - CtlRec - Reserved for CtrlProc's us
;e.
octlRefCon equ $20 ; Longint - CtlRec - Reserved for application
;'s use.
octlColor equ $24 ; Pointer - CtlRec - Pointer to appropriate co
;lor table.
oboundRect equ $00 ; Rect - LimitBlk - Drag bounds.
oslopRect equ $08 ; Rect - LimitBlk - Cursor bounds.
oaxisParam equ $10 ; Word - LimitBlk - Movement constrains.
odragPatt equ $12 ; Pointer - LimitBlk - Pointer to 32 byte Patt
;ern for drag outline.
noConstraint equ $0000 ; Axis Parameter - No constraint on movem
;ent.
hAxisOnly equ $0001 ; Axis Parameter - Horizontal axis only.
vAxisOnly equ $0002 ; Axis Parameter - Vertical axis only.
simpRound equ $0000 ; CtlFlag - Simple button flag
upFlag equ $0001 ; CtlFlag - Scroll bar flag.
boldButton equ $0001 ; CtlFlag - Bold round cornered outlined bu
;tton.
simpBRound equ $0001 ; CtlFlag - Simple button flag
downFlag equ $0002 ; CtlFlag - Scroll bar flag.
simpSquare equ $0002 ; CtlFlag - Simple button flag
simpDropSquare equ $0003 ; CtlFlag - Simple button flag
leftFlag equ $0004 ; CtlFlag - Scroll bar flag.
rightFlag equ $0008 ; CtlFlag - Scroll bar flag.
dirScroll equ $0010 ; CtlFlag - Scroll bar flag.
horScroll equ $0010 ; CtlFlag - Scroll bar flag.
family equ $007F ; CtlFlag - Mask for radio button family number
ctlInVis equ $0080 ; CtlFlag - invisible mask for any type of co
;ntrol
simpleProc equ $00000000 ; CtlProc -
checkProc equ $02000000 ; CtlProc -
radioProc equ $04000000 ; CtlProc -
scrollProc equ $06000000 ; CtlProc -
growProc equ $08000000 ; CtlProc -
drawCtl equ $0000 ; DefProc - Draw control command.
calcCRect equ $0001 ; DefProc - Compute drag RECT command.
testCtl equ $0002 ; DefProc - Hit test command.
initCtl equ $0003 ; DefProc - Initialize command.
dispCtl equ $0004 ; DefProc - Dispose command.
posCtl equ $0005 ; DefProc - Move indicator command.
thumbCtl equ $0006 ; DefProc - Compute drag parameters command.
dragCtl equ $0007 ; DefProc - Drag command.
autoTrack equ $0008 ; DefProc - Action command.
newValue equ $0009 ; DefProc - Set new value command.
setParams equ $000A ; DefProc - Set new parameters command.
moveCtl equ $000B ; DefProc - Move command.
recSize equ $000C ; DefProc - Return record size command.
noHilite equ $0000 ; hiliteState - Param to HiliteControl
inactiveHilite equ $00FF ; hiliteState - Param to HiliteControl
noPart equ $0000 ; PartCode -
simpleButton equ $0002 ; PartCode -
checkBox equ $0003 ; PartCode -
radioButton equ $0004 ; PartCode -
upArrow equ $0005 ; PartCode -
downArrow equ $0006 ; PartCode -
pageUp equ $0007 ; PartCode -
pageDown equ $0008 ; PartCode -
growBox equ $000A ; PartCode -
thumb equ $0081 ; PartCode -

25
src/macro/E16.DESK.S Normal file
View File

@ -0,0 +1,25 @@
; File: E16.Desk
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
daNotFound equ $0510 ; Desk error - desk accessory not found
notSysWindow equ $0511 ; Desk error - not the system window
eventAction equ $0001 ; NDA action code -
runAction equ $0002 ; NDA action code -
undoAction equ $0005 ; NDA action code -
cutAction equ $0006 ; NDA action code -
copyAction equ $0007 ; NDA action code -
pasteAction equ $0008 ; NDA action code -
clearAction equ $0009 ; NDA action code -
cursorAction equ $0003 ; NDAaction code -
undo equ $0001 ; System Edit - edit type
cut equ $0002 ; System Edit - edit type
copy equ $0003 ; System Edit - edit type
paste equ $0004 ; System Edit - edit type
clear equ $0005 ; System Edit - edit type

93
src/macro/E16.DIALOG.S Normal file
View File

@ -0,0 +1,93 @@
; File: E16.Dialog
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
badItemType equ $150A ; Dialog error -
newItemFailed equ $150B ; Dialog error -
itemNotFound equ $150C ; Dialog error -
notModalDialog equ $150D ; Dialog error -
oatBoundsRect equ $00 ; Rect - AlertTemplate -
oatAlertID equ $08 ; Word - AlertTemplate -
oatStage1 equ $0A ; Byte - AlertTemplate -
oatStage2 equ $0B ; Byte - AlertTemplate -
oatStage3 equ $0C ; Byte - AlertTemplate -
oatStage4 equ $0D ; Byte - AlertTemplate -
oatItemList equ $0E ; ItemTempPtr - AlertTemplate - Null termina
;ted array
odtBoundsRect equ $00 ; Rect - DialogTemplate -
odtVisible equ $08 ; Boolean - DialogTemplate -
odtRefCon equ $0A ; Long - DialogTemplate -
odtItemList equ $0E ; ItemTempPtr - DialogTemplate - Null termin
;ated array
oiconRect equ $00 ; Rect - IconRecord -
oiconImage equ $08 ; Byte - IconRecord -
oitemID equ $00 ; Word - ItemTemplate -
oitemRect equ $02 ; Rect - ItemTemplate -
oitemType equ $0A ; Word - ItemTemplate -
oitemDescr equ $0C ; Pointer - ItemTemplate -
oitemValue equ $10 ; Word - ItemTemplate -
oitemFlag equ $12 ; Word - ItemTemplate -
oitemColor equ $14 ; CtlColorTablePtr - ItemTemplate -
odefProcParm equ $00 ; Longint - UserCtlItemPB -
otitleParm equ $04 ; Pointer - UserCtlItemPB -
oparam2 equ $08 ; Word - UserCtlItemPB -
oparam1 equ $0A ; Word - UserCtlItemPB -
getInitView equ $0001 ; Command -
getInitTotal equ $0002 ; Command -
getInitValue equ $0003 ; Command -
scrollLineUp equ $0004 ; Command -
scrollLineDown equ $0005 ; Command -
scrollPageUp equ $0006 ; Command -
scrollPageDown equ $0007 ; Command -
scrollThumb equ $0008 ; Command -
buttonItem equ $000A ; Item Type -
checkItem equ $000B ; Item Type -
radioItem equ $000C ; Item Type -
scrollBarItem equ $000D ; Item Type -
userCtlItem equ $000E ; Item Type -
statText equ $000F ; Item Type -
longStatText equ $0010 ; Item Type -
editLine equ $0011 ; Item Type -
iconItem equ $0012 ; Item Type -
picItem equ $0013 ; Item Type -
userItem equ $0014 ; Item Type -
userCtlItem2 equ $0015 ; Item Type -
longStatText2 equ $0016 ; Item Type -
itemDisable equ $8000 ; Item Type -
minItemType equ $000A ; Item Type Range -
maxItemType equ $0016 ; Item Type Range -
ok equ $0001 ; ItemID -
cancel equ $0002 ; ItemID -
inButton equ $0002 ; ModalDialog2 - Part code
inCheckBox equ $0003 ; ModalDialog2 - Part code
inRadioButton equ $0004 ; ModalDialog2 - Part code
inUpArrow equ $0005 ; ModalDialog2 - Part code
inDownArrow equ $0006 ; ModalDialog2 - Part code
inPageUp equ $0007 ; ModalDialog2 - Part code
inPageDown equ $0008 ; ModalDialog2 - Part code
inStatText equ $0009 ; ModalDialog2 - Part code
inGrow equ $000A ; ModalDialog2 - Part code
inEditLine equ $000B ; ModalDialog2 - Part code
inUserItem equ $000C ; ModalDialog2 - Part code
inLongStatText equ $000D ; ModalDialog2 - Part code
inIconItem equ $000E ; ModalDialog2 - Part code
inLongStatText2 equ $000F ; ModalDialog2 -
inThumb equ $0081 ; ModalDialog2 - Part code
okDefault equ $0000 ; Stage Bit Vector -
cancelDefault equ $0040 ; Stage Bit Vector -
alertDrawn equ $0080 ; Stage Bit Vector -

75
src/macro/E16.EVENT.S Normal file
View File

@ -0,0 +1,75 @@
; File: E16.Event
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
emDupStrtUpErr equ $0601 ; error - duplicate EMStartup Call
emResetErr equ $0602 ; error - can't reset error the Event Manag
;er
emNotActErr equ $0603 ; error - event manager not active
emBadEvtCodeErr equ $0604 ; error - illegal event code
emBadBttnNoErr equ $0605 ; error - illegal button number
emQSiz2LrgErr equ $0606 ; error - queue size too large
emNoMemQueueErr equ $0607 ; error - not enough memory for queue
emBadEvtQErr equ $0681 ; error - fatal sys error - event queue d
;amaged
emBadQHndlErr equ $0682 ; error - fatal sys error - queue handle
; damaged
owhat equ $00 ; Word - EventRecord - event code
omessage equ $02 ; Long - EventRecord - event message
owhen equ $06 ; Long - EventRecord - ticks since startup
owhere equ $0A ; Point - EventRecord - mouse location
omodifiers equ $0E ; Word - EventRecord - modifier flags
nullEvt equ $0000 ; Event Code -
mouseDownEvt equ $0001 ; Event Code -
mouseUpEvt equ $0002 ; Event Code -
keyDownEvt equ $0003 ; Event Code -
autoKeyEvt equ $0005 ; Event Code -
updateEvt equ $0006 ; Event Code -
activateEvt equ $0008 ; Event Code -
switchEvt equ $0009 ; Event Code -
deskAccEvt equ $000A ; Event Code -
driverEvt equ $000B ; Event Code -
app1Evt equ $000C ; Event Code -
app2Evt equ $000D ; Event Code -
app3Evt equ $000E ; Event Code -
app4Evt equ $000F ; Event Code -
mDownMask equ $0002 ; Event Masks -
mUpMask equ $0004 ; Event Masks -
keyDownMask equ $0008 ; Event Masks -
autoKeyMask equ $0020 ; Event Masks -
updateMask equ $0040 ; Event Masks -
activeMask equ $0100 ; Event Masks -
switchMask equ $0200 ; Event Masks -
deskAccMask equ $0400 ; Event Masks -
driverMask equ $0800 ; Event Masks -
app1Mask equ $1000 ; Event Masks -
app2Mask equ $2000 ; Event Masks -
app3Mask equ $4000 ; Event Masks -
app4Mask equ $8000 ; Event Masks -
everyEvent equ $FFFF ; Event Masks -
jcTickCount equ $00 ; Journal Code - TickCount call
jcGetMouse equ $01 ; Journal Code - GetMouse call
jcButton equ $02 ; Journal Code - Button call
jcEvent equ $04 ; Journal Code - GetNextEvent and EventAvail cal
;ls
activeFlag equ $0001 ; Modifier Flags - set if window being acti
;vated
changeFlag equ $0002 ; Modifier Flags - set if active wind. chan
;ged state
btn1State equ $0040 ; Modifier Flags - set if button 1 up
btn0State equ $0080 ; Modifier Flags - set if button 0 up
appleKey equ $0100 ; Modifier Flags - set if Apple key down
shiftKey equ $0200 ; Modifier Flags - set if shift key down
capsLock equ $0400 ; Modifier Flags - set if caps lock key down
optionKey equ $0800 ; Modifier Flags - set if option key down
controlKey equ $1000 ; Modifier Flags - set if Control key down
keyPad equ $2000 ; Modifier Flags - set if keypress from key pad

64
src/macro/E16.FONT.S Normal file
View File

@ -0,0 +1,64 @@
; File: E16.Font
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
fmDupStartUpErr equ $1B01 ; Font error - duplicate FMStartUp cal
;l
fmResetErr equ $1B02 ; Font error - can't reset the Font Manager
fmNotActiveErr equ $1B03 ; Font error - Font Manager not active
fmFamNotFndErr equ $1B04 ; Font error - family not found
fmFontNtFndErr equ $1B05 ; Font error - font not found
fmFontMemErr equ $1B06 ; Font error - font not in memory
fmSysFontErr equ $1B07 ; Font error - system font cannot be purg
;eable
fmBadFamNumErr equ $1B08 ; Font error - illegal family number
fmBadSizeErr equ $1B09 ; Font error - illegal size
fmBadNameErr equ $1B0A ; Font error - illegal name length
fmMenuErr equ $1B0B ; Font error - fix font menu never called
fmScaleSizeErr equ $1B0C ; Font error - scaled size of font exee
;ds limits
ofamNum equ $00 ; Word - FontID -
ofontStyle equ $02 ; Byte - FontID -
ofontSize equ $03 ; Byte - FontID -
oresultID equ $00 ; FontID - FontStatRec -
oresultStats equ $04 ; Word - FontStatRec -
newYork equ $0002 ; Family Number -
geneva equ $0003 ; Family Number -
monaco equ $0004 ; Family Number -
venice equ $0005 ; Family Number -
london equ $0006 ; Family Number -
athens equ $0007 ; Family Number -
sanFran equ $0008 ; Family Number -
toronto equ $0009 ; Family Number -
cairo equ $000B ; Family Number -
losAngeles equ $000C ; Family Number -
times equ $0014 ; Family Number -
helvetica equ $0015 ; Family Number -
courier equ $0016 ; Family Number -
symbol equ $0017 ; Family Number -
taliesin equ $0018 ; Family Number -
shaston equ $FFFE ; Family Number -
baseOnlyBit equ $0020 ; FamSpecBits -
notBaseBit equ $0020 ; FamStatBits -
memOnlyBit equ $0001 ; FontSpecBits -
realOnlyBit equ $0002 ; FontSpecBits -
anyFamBit equ $0004 ; FontSpecBits -
anyStyleBit equ $0008 ; FontSpecBits -
anySizeBit equ $0010 ; FontSpecBits -
memBit equ $0001 ; FontStatBits -
unrealBit equ $0002 ; FontStatBits -
apFamBit equ $0004 ; FontStatBits -
apVarBit equ $0008 ; FontStatBits -
purgeBit equ $0010 ; FontStatBits -
notDiskBit equ $0020 ; FontStatBits -
notFoundBit equ $8000 ; FontStatBits -
dontScaleBit equ $0001 ; Scale Word -

405
src/macro/E16.GSOS.S Normal file
View File

@ -0,0 +1,405 @@
* File: E16.GSOS
*
* These equates can be used with the GSOS.MACS in the MACRO.LIBRARY
* directory. You can also copy the data structures at the end of this
* file directly into your own source files.
*
*-----------------------------------------------
* File access - CreateRec, OpenRec access and requestAccess fields
readEnable = $0001 ;read enable bit:
writeEnable = $0002 ;write enable bit:
backupNeeded = $0020 ;backup needed bit:must be '0' in requestAccess field )
renameEnable = $0040 ;rename enable bit:
destroyEnable = $0080 ;read enable bit:
* base - > setMark = ...
startPlus = $0000 ;base - setMark = displacement
eofMinus = $0001 ;base - setMark = eof - displacement
markPlus = $0002 ;base - setMark = mark + displacement
markMinus = $0003 ;base - setMark = mark - displacement
* cachePriority
noCache = $0000 ;cachePriority - do not cache blocks invloved in this read
cache = $0001 ;cachePriority - cache blocks invloved in this read if possible
*-----------------------------------------------
* GS/OS Error codes
badSystemCall = $0001 ;bad system call number
invalidPcount = $0004 ;invalid parameter count
gsosActive = $0007 ;GS/OS already active
devNotFound = $0010 ;device not found
invalidDevNum = $0011 ;invalid device number
drvrBadReq = $0020 ;bad request or command
drvrBadCode = $0021 ;bad control or status code
drvrBadParm = $0022 ;bad call parameter
drvrNotOpen = $0023 ;character device not open
drvrPriorOpen = $0024 ;character device already open
irqTableFull = $0025 ;interrupt table full
drvrNoResrc = $0026 ;resources not available
drvrIOError = $0027 ;I/O error
drvrNoDevice = $0028 ;device not connected
drvrBusy = $0029 ;call aborted, driver is busy
drvrWrtProt = $002B ;device is write protected
drvrBadCount = $002C ;invalid byte count
drvrBadBlock = $002D ;invalid block address
drvrDiskSwitch = $002E ;disk has been switched
drvrOffLine = $002F ;device off line/ no media present
badPathSyntax = $0040 ;invalid pathname syntax
invalidRefNum = $0043 ;invalid reference number
pathNotFound = $0044 ;subdirectory does not exist
volNotFound = $0045 ;volume not found
fileNotFound = $0046 ;file not found
dupPathname = $0047 ;create or rename with existing name
volumeFull = $0048 ;volume full error
volDirFull = $0049 ;volume directory full
badFileFormat = $004A ;version error (incompatible file format)
badStoreType = $004B ;unsupported (or incorrect) storage type
eofEncountered = $004C ;end-of-file encountered
outOfRange = $004D ;position out of range
invalidAccess = $004E ;access not allowed
buffTooSmall = $004F ;buffer too small
fileBusy = $0050 ;file is already open
dirError = $0051 ;directory error
unknownVol = $0052 ;unknown volume type
paramRangeErr = $0053 ;parameter out of range
outOfMem = $0054 ;out of memory
dupVolume = $0057 ;duplicate volume name
notBlockDev = $0058 ;not a block device
invalidLevel = $0059 ;specifield level outside legal range
damagedBitMap = $005A ;block number too large
badPathNames = $005B ;invalid pathnames for ChangePath
notSystemFile = $005C ;not an executable file
osUnsupported = $005D ;Operating System not supported
stackOverflow = $005F ;too many applications on stack
dataUnavail = $0060 ;Data unavailable
endOfDir = $0061 ;end of directory has been reached
invalidClass = $0062 ;invalid FST call class
resNotFound = $0063 ;file does not contain required resource
*-----------------------------------------------
* FileSysID's
proDOS = $0001 ;ProDOS/SOS
dos33 = $0002 ;DOS 3.3
dos32 = $0003 ;DOS 3.2
dos31 = $0003 ;DOS 3.1
appleIIPascal = $0004 ;Apple II Pascal
mfs = $0005 ;Macintosh (flat file system)
hfs = $0006 ;Macintosh (hierarchical file system)
lisa = $0007 ;Lisa file system
appleCPM = $0008 ;Apple CP/M
charFST = $0009 ;Character FST
msDOS = $000A ;MS/DOS
highSierra = $000B ;High Sierra
* fileSysID (NEW FOR GSOS 5.0)
ProDOSFSID = $01 ;ProDOS/SOS
dos33FSID = $02 ;DOS 3.3
dos32FSID = $03 ;DOS 3.2
dos31FSID = $03 ;DOS 3.1
appleIIPascalFSID = $04 ;Apple II Pascal
mfsFSID = $05 ;Macintosh (flat file system)
hfsFSID = $06 ;Macintosh (hierarchical file system)
lisaFSID = $07 ;Lisa file system
appleCPMFSID = $08 ;Apple CP/M
charFSTFSID = $09 ;Character FST
msDOSFSID = $0A ;MS/DOS
highSierraFSID = $0B ;High Sierra
ISO9660FSID = $0C ;ISO 9660
AppleShare = $0D ;AppleShare
* FSTInfo.attributes
characterFST = $4000 ;character FST
ucFST = $8000 ;SCM should upper case pathnames before
; passing them to the FST
* QuitRec.flags
onStack = $8000 ;place state information about quitting
; program on the quit return stack
restartable = $4000 ;the quitting program is capable of being
; restarted from its dormant memory
* StorageType
seedling = $0001 ;standard file with seedling structure
standardFile = $01 ;standard file type (no resource fork)
sapling = $0002 ;standard file with sapling structure
tree = $0003 ;standard file with tree structure
pascalRegion = $0004 ;UCSD Pascal region on a partitioned disk
extendedFile = $0005 ;extended file type (with resource fork)
directoryFile = $000D ;volume directory or subdirectory file
* version
minorRelNum = $00FF ;version - minor release number
majorRelNum = $7F00 ;version - major release number
finalRel = $8000 ;version - final release
isFileExtended = $8000
*-----------------------------------------------
* GSOS Call ID numbers, as is for class '0'
*
* 'OR' these numbers with $2000 for class '1'
* See the macros iGSOS and sGSOS.
*
* NOTE: The v4.0 and v5.0 calls are identical with
* the exception that the APW v5.0 macros have
* 'GS' appended to the end of each call name.
_Create = $0001
_Destroy = $0002
_OSShutdown = $2003 ;class '1' only
_ChangePath = $0004
_SetFileInfo = $0005
_GetFileInfo = $0006
_Volume = $0008
_SetPrefix = $0009
_GetPrefix = $000A
_ClearBackupBit = $000B
_SetSysPrefs = $200C ;class '1' only
_Null = $200D ;class '1' only
_ExpandPath = $200E ;class '1' only
_GetSysPrefs = $200F ;class '1' only
_Open = $0010
_Newline = $0011
_Read = $0012
_Write = $0013
_Close = $0014
_Flush = $0015
_SetMark = $0016
_GetMark = $0017
_SetEOF = $0018
_GetEOF = $0019
_SetLevel = $001A
_GetLevel = $001B
_GetDirEntry = $001C
_BeginSession = $201D ;class '1' only
_EndSession = $201E ;class '1' only
_SessionStatus = $201F ;class '1' only
_GetDevNumber = $0020
_GetLastDev = $0021
_ReadBlock = $0022 ;class '0' only
_WriteBlock = $0023 ;class '0' only
_Format = $0024
_EraseDisk = $0025
_ResetCache = $2026 ;class '1' only
_GetName = $0027
_GetBootVol = $0028
_Quit = $0029
_GetVersion = $002A
_GetFSTInfo = $202B ;class '1' only
_DInfo = $002C
_DStatus = $202D ;class '1' only
_DControl = $202E ;class '1' only
_DRead = $202F ;class '1' only
_DWrite = $2030 ;class '1' only
_AllocInterrupt = $0031 ;P16 call
_BindInt = $2031 ;GS/OS call
_DeallocInterrupt = $0032 ;P16 call
_UnbindInt = $2032 'GS/OS call
_AddNotifyProc = $2034 ;class '1' only
_DelNotifyProc = $2035 ;class '1' only
_DRename = $2036 ;class '1' only
_GetStdRefNum = $2037 ;class '1' only
_GetRefNum = $2038 ;class '1' only
_GetRefInfo = $2039 ;class '1' only
*===============================================
* Class 1 parameter tables.
* (partial listing for reference only.)
* (also refer to the class_1 help file)
DUM 0 ; Currently set so the following doesn't
; generate any code if you include this
; entire file in your source file with
; a PUT or USE.
ChangePathRec DA 0 ;pCount
ADRL 0 ;pathname
ADRL 0 ;newPathname
CreateRec DA 0 ;pCount
ADRL 0 ;pathname
DA 0 ;access
DA 0 ;fileType
ADRL 0 ;auxType
DA 0 ;storageType
ADRL 0 ;eof
ADRL 0 ;resourceEOF
DAccessRec DA 0 ;pCount
DA 0 ;devNum
DA 0 ;code
ADRL 0 ;list
ADRL 0 ;requestCount
ADRL 0 ;transferCount
DevNumRec DA 0 ;pCount
ADRL 0 ;devName
DA 0 ;devNum
DInfoRec DA 0 ;pCount
DA 0 ;devNum
ADRL 0 ;devName
DA 0 ;characteristics
ADRL 0 ;totalBlocks
DA 0 ;slotNum
DA 0 ;unitNum
DA 0 ;version
DA 0 ;deviceID
DA 0 ;headLink
DA 0 ;forwardLink
DIORec DA 0 ;pCount
DA 0 ;devNum
ADRL 0 ;buffer
ADRL 0 ;requestCount
ADRL 0 ;startingBlock
DA 0 ;blockSize
ADRL 0 ;transferCount
DirEntryRec DA 0 ;pCount
DA 0 ;refNum
DA 0 ;flags
DA 0 ;base
DA 0 ;displacement
ADRL 0 ;name
DA 0 ;entryNum
DA 0 ;fileType
ADRL 0 ;eof
ADRL 0 ;blockCount
DS 8 ;createDateTime
DS 8 ;modDateTime
DA 0 ;access
ADRL 0 ;auxType
DA 0 ;fileSysID
ADRL 0 ;optionList
ADRL 0 ;resourceEof
ADRL 0 ;resourceBlocks
ExpandPathRec DA 0 ;pCount
ADRL 0 ;inputPath
ADRL 0 ;outputPath
DA 0 ;flags
FileInfoRec DA 0 ;pCount
ADRL 0 ;pathname
DA 0 ;access
DA 0 ;fileType
ADRL 0 ;auxType
DA 0 ;null/storageType
DS 8 ;createDateTime
DS 8 ;modDateTime
ADRL 0 ;optionList
ADRL 0 ;null/eof
ADRL 0 ;null/blocksUsed
ADRL 0 ;null/resourceEOF
ADRL 0 ;null/resourceBlocks
FormatRec DA 0 ;pCount
ADRL 0 ;devName
ADRL 0 ;volName
DA 0 ;fileSysID
FSTInfoRec DA 0 ;pCount
DA 0 ;fstNum
DA 0 ;fileSysId
ADRL 0 ;fstName
DA 0 ;version
DA 0 ;attributes
DA 0 ;blockSize
ADRL 0 ;maxVolSize
ADRL 0 ;maxFileSize
InterruptRec DA 0 ;pCount
DA 0 ;intNum
DA 0 ;vrn
ADRL 0 ;intCode
IORec DA 0 ;pCount
DA 0 ;refNum
ADRL 0 ;dataBuffer
ADRL 0 ;requestCount
ADRL 0 ;transferCount
DA 0 ;cachePriority
LevelRec DA 0 ;pCount
DA 0 ;level
NameRec DA 0 ;pCount
ADRL 0 ;pathname
NewlineRec DA 0 ;pCount
DA 0 ;refNum
DA 0 ;enableMask
DA 0 ;numChars
ADRL 0 ;newlineTable
OpenRec DA 0 ;pCount
DA 0 ;refNum
ADRL 0 ;pathname
DA 0 ;requestAccess
DA 0 ;resourceNumber
DA 0 ;access
DA 0 ;fileType
ADRL 0 ;auxType
DA 0 ;storageType
DS 8 ;createDateTime
DS 8 ;modDateTime
ADRL 0 ;optionList
ADRL 0 ;eof
ADRL 0 ;blocksUsed
ADRL 0 ;resourceEOF
ADRL 0 ;resourceBlocks
PositionRec DA 0 ;pCount
DA 0 ;refNum
ADRL 0 ;position
PrefixRec DA 0 ;pCount
DA 0 ;prefixNum
ADRL 0 ;prefix
QuitRec DA 0 ;pCount
ADRL 0 ;pathname
DA 0 ;flags
RefNumRec DA 0 ;pCount
DA 0 ;refNum
SetPositionRec DA 0 ;pCount
DA 0 ;refNum
DA 0 ;base
ADRL 0 ;displacement
ShutdownRec DA 0 ;pCount
DA 0 ;flag
TimeRec DB 0 ;second
DB 0 ;minute
DB 0 ;hour
DB 0 ;year
DB 0 ;day
DB 0 ;month
DB 0 ;extra
DB 0 ;weekDay
VersionRec DA 0 ;pCount
DA 0 ;version
VolumeRec DA 0 ;pCount
ADRL 0 ;devName
ADRL 0 ;volName
ADRL 0 ;totalBlocks
ADRL 0 ;freeBlocks
DA 0 ;fileSysID
DA 0 ;blockSize
DEND ; End of dummy section...

34
src/macro/E16.INTMATH.S Normal file
View File

@ -0,0 +1,34 @@
; File: E16.IntMath
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
imBadInptParam equ $0B01 ; IntMath error - bad input parameter
imIllegalChar equ $0B02 ; IntMath error - Illegal character in s
;tring
imOverflow equ $0B03 ; IntMath error - integer or long integer o
;verflow
imStrOverflow equ $0B04 ; IntMath error - string overflow
minLongint equ $80000000 ; Limit - minimum negative signed long
;integer
minFrac equ $80000000 ; Limit - pinned value for negative Frac o
;verflow
minFixed equ $80000000 ; Limit - pinned value for negative Fixed
; overflow
minInt equ $8000 ; Limit - minimum negative signed integer
maxInt equ $7FFF ; Limit - maximum positive signed integer
maxUInt equ $FFFF ; Limit - maximum unsigned integer
maxLongint equ $7FFFFFFF ; Limit - maximum positive signed Longi
;nt
maxFrac equ $7FFFFFFF ; Limit - pinned value for positive Frac o
;verflow
maxFixed equ $7FFFFFFF ; Limit - pinned value for positive Fixed
; overflow
maxULong equ $FFFFFFFF ; Limit - maximum unsigned Long
unsignedFlag equ $0000 ; SignedFlag -
signedFlag equ $0001 ; SignedFlag -

36
src/macro/E16.LINEEDIT.S Normal file
View File

@ -0,0 +1,36 @@
; File: E16.LineEdit
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
leDupStrtUpErr equ $1401 ; LineEdit error - duplicate LEStartup
;call
leResetErr equ $1402 ; LineEdit error - can't reset Line Edit
leNotActiveErr equ $1403 ; LineEdit error - Line Edit not active
leScrapErr equ $1404 ; LineEdit error - desk scrap too big to co
;py
oleLineHandle equ $00 ; Handle - LERec -
oleLength equ $04 ; Integer - LERec -
oleMaxLength equ $06 ; Integer - LERec -
oleDestRect equ $08 ; Rect - LERec -
oleViewRect equ $10 ; Rect - LERec -
olePort equ $18 ; GrafPortPtr - LERec -
oleLineHite equ $1C ; Integer - LERec -
oleBaseHite equ $1E ; Integer - LERec -
oleSelStart equ $20 ; Integer - LERec -
oleSelEnd equ $22 ; Integer - LERec -
oleActFlg equ $24 ; Word - LERec -
oleCarAct equ $26 ; Word - LERec -
oleCarOn equ $28 ; Word - LERec -
oleCarTime equ $2A ; Longint - LERec -
oleHiliteHook equ $2E ; Pointer - LERec -
oleCaretHook equ $32 ; Pointer - LERec -
leJustLeft equ $0000 ; Justification -
leJustCenter equ $0001 ; Justification -
leJustFill equ $0002 ; Justification -
leJustRight equ $FFFF ; Justification -

59
src/macro/E16.LIST.S Normal file
View File

@ -0,0 +1,59 @@
; File: E16.List
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
omemPtr equ $0 ; Pointer - MemRec - Pointer to string, or custom
omemFlag equ $4 ; Byte - MemRec - Bit Flag
olistFrameClr equ $00 ; Word - LColorTable - Frame color
olistNorTextClr equ $2 ; Word - LColorTable - Unhighlighted text
; color
olistSelTextClr equ $4 ; Word - LColorTable - Highlighted text c
;olor
olistNorBackClr equ $6 ; Word - LColorTable - Unhighlighted back
;ground color
olistSelBackClr equ $8 ; Word - LColorTable - Highlighted backgr
;aound color
; Front of ListCtlRec matches CtlRec
octlMemDraw equ $28 ; Pointer - ListCtlRec - Address of routine
;to draw mem
octlMemHeight equ $2C ; Word - ListCtlRec - Member's Height in P
;ixels
octlMemSize equ $2E ; Word - ListCtlRec - Bytes in member record
octlList equ $30 ; MemRecPtr - ListCtlRec - Adress of first memb
;er record in array
octlListBar equ $34 ; CtlRecHndl - ListCtlRec - Handle of list c
;ontrlo's scroll bar control
olistRect equ $0 ; Rect - ListRec - Enclosing Rectangle
olistSize equ $8 ; Word - ListRec - Number of List Members
olistView equ $A ; Word - ListRec - Max Viewable members
olistType equ $C ; Word - ListRec - Bit Flag
olistStart equ $E ; Word - ListRec - First member in view
olistCtl equ $10 ; CtlRecHndl - ListRec - List control's handle
olistDraw equ $14 ; Pointer - ListRec - Adress of Custum drawing
; routine
olistMemHeight equ $18 ; Word - ListRec - Height of list members
olistMemSize equ $1A ; Word - ListRec - Size of Member Records
olistPointer equ $1C ; MemRecPtr - ListRec - Pointer to first el
;ement in MemRec[]
olistRefCon equ $20 ; Long - ListRec - becomes Control's refCon
olistScrollClr equ $24 ; BarColorsPtr - ListRec - Color table fo
;r list's scroll bar
cString equ $0001 ; ListType bit mask - null terminated string t
;ype
LIST_STRG equ $0001 ; ListType bit mask - null terminated string
; type
selectOnlyOne equ $0002 ; ListType bit mask - only one selection
; allowed
LIST_SELECT equ $0002 ; ListType bit mask - single selection onl
;y
memDisabled equ $40 ; memFlag - Sets member flag to disabled
memSelected equ $80 ; memFlag - Sets member flag to selected

31
src/macro/E16.LOADER.S Normal file
View File

@ -0,0 +1,31 @@
; File: E16.Loader
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
idNotFound equ $1101 ; Loader error - segment/application/entry
;not found
idNotLoadFile equ $1104 ; Loader error - file is not a load file
idBusyErr equ $1105 ; Loader error - system loader is busy
idFilVersErr equ $1107 ; Loader error - file version error
idUserIDErr equ $1108 ; Loader error - user ID error
idSequenceErr equ $1109 ; Loader error - segnum out of sequence
idBadRecordErr equ $110A ; Loader error - illegal load record fo
;und
idForeignSegErr equ $110B ; Loader error - segment is foreign
ouserID equ $00 ; Word - InitialLoadOutputRec/RestartRec -
ostartAddr equ $02 ; Pointer - InitialLoadOutputRec/RestartRec -
odPageAddr equ $06 ; Word - InitialLoadOutputRec/RestartRec -
obuffSize equ $08 ; Word - InitialLoadOutputRec/RestartRec -
osegAddr equ $00 ; Pointer - LoadSegNameOut -
ofileNum equ $04 ; Word - LoadSegNameOut -
osegNum equ $06 ; Word - LoadSegNameOut -
ousUserID equ $00 ; Word - UnloadSegOutRec -
ousFileNum equ $02 ; Word - UnloadSegOutRec -
ousSegNum equ $04 ; Word - UnloadSegOutRec -

39
src/macro/E16.LOCATOR.S Normal file
View File

@ -0,0 +1,39 @@
* This file is converted from the original source designed for
* APW by the Merlin-converter program, written by Brian Fox.
*
* Converter version 7.11
*
* Additional editing will be necessary, in addition to running
* the Merlin 16 MACGEN utility.
*
XC
XC
MX %00 ; Full 65816 mode for Merlin
**************************************************************
; File: E16.Locator
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
toolNotFoundErr equ $0001 ; Locator error -
funcNotFoundErr equ $0002 ; Locator error -
toolVersionErr equ $0010 ; Locator error -
sysStrtMtErr equ $0100 ; Locator error - can't mount system star
;tup volume
messNotFoundErr equ $0111 ; Locator error -
addMessage equ $0001 ; Message Center -
getMessage equ $0002 ; Message Center -
deleteMessage equ $0003 ; Message Center -
fileInfoType equ $0001 ; MessageCenter - Message type parameter
mvReturn equ $0001 ; TLMountVolume - like ok for dialogs
mvEscape equ $0002 ; TLMountVolume - like cancel for dialogs
sysTool equ $0000 ; Tool Set Spec -
userTool equ $8000 ; Tool Set Spec -

39
src/macro/E16.MEMORY.S Normal file
View File

@ -0,0 +1,39 @@
; File: E16.Memory
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
memErr equ $0201 ; error - unable to allocate block
emptyErr equ $0202 ; error - illegal operation, empty handle
notEmptyErr equ $0203 ; error - an empty handle was expected for
; this operation
lockErr equ $0204 ; error - illegal operation on a locked block
purgeErr equ $0205 ; error - attempt to purge an unpurgable bloc
;k
handleErr equ $0206 ; error - an invalid handle was given
idErr equ $0207 ; error - an invalid owner ID was given
attrErr equ $0208 ; error - operation illegal on block with give
;n attributes
attrNoPurge equ $0000 ; Handle Attribute Bits - Not purgeable
attrBank equ $0001 ; Handle Attribute Bits - fixed bank
attrAddr equ $0002 ; Handle Attribute Bits - fixed address
attrPage equ $0004 ; Handle Attribute Bits - page aligned
attrNoSpec equ $0008 ; Handle Attribute Bits - may not use speci
;al memory
attrNoCross equ $0010 ; Handle Attribute Bits - may not cross ba
;nks
attrPurge1 equ $0100 ; Handle Attribute Bits - Purge level 1
attrPurge2 equ $0200 ; Handle Attribute Bits - Purge level 2
attrPurge3 equ $0300 ; Handle Attribute Bits - Purge level 3
attrPurge equ $0300 ; Handle Attribute Bits - test or set both p
;urge bits
attrHandle equ $1000 ; Handle Attribute Bits - block of master p
;ointers
attrSystem equ $2000 ; Handle Attribute Bits - system handle
attrFixed equ $4000 ; Handle Attribute Bits - not movable
attrLocked equ $8000 ; Handle Attribute Bits - locked

45
src/macro/E16.MENU.S Normal file
View File

@ -0,0 +1,45 @@
; File: E16.Menu
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
omenuID equ $00 ; Word - MenuRec - Menu's ID number.
omenuWidth equ $02 ; Word - MenuRec - Width of menu.
omenuHeight equ $04 ; Word - MenuRec - Height of menu.
omenuProc equ $06 ; Pointer - MenuRec - Menu's definition proced
;ure.
omenuFlag equ $0A ; Byte - MenuRec - Bit flags.
omenuRes equ $0B ; Byte - MenuRec -
ofirstItem equ $0C ; Byte - MenuRec -
onumOfItems equ $0D ; Byte - MenuRec -
otitleWidth equ $0E ; Word - MenuRec - Width of menu's title.
otitleName equ $10 ; Pointer - MenuRec - Menu's title.
mDrawMsg equ $0000 ; MenuDefProcCodes -
mChooseMsg equ $0001 ; MenuDefProcCodes -
mSizeMsg equ $0002 ; MenuDefProcCodes -
mDrawTitle equ $0003 ; MenuDefProcCodes -
mDrawMItem equ $0004 ; MenuDefProcCodes -
mGetMItemID equ $0005 ; MenuDefProcCodes -
mInvis equ $0004 ; MenuFlag -
mCustom equ $0010 ; MenuFlag -
mXor equ $0020 ; MenuFlag -
mSelected equ $0040 ; MenuFlag -
mDisabled equ $0080 ; MenuFlag -
customMenu equ $0010 ; MenuFlagMasks -
xorMItemHilite equ $0020 ; MenuFlagMasks -
xorTitleHilite equ $0020 ; MenuFlagMasks -
underMItem equ $0040 ; MenuFlagMasks -
disableMenu equ $0080 ; MenuFlagMasks -
enableMenu equ $FF7F ; MenuFlagMasks -
noUnderMItem equ $FFBF ; MenuFlagMasks -
colorMItemHilite equ $FFDF ; MenuFlagMasks -
colorTitleHilite equ $FFDF ; MenuFlagMasks -
colorReplace equ $FFDF ; MenuFlagMasks -
standardMenu equ $FFEF ; MenuFlagMasks -

309
src/macro/E16.MISCTOOL.S Normal file
View File

@ -0,0 +1,309 @@
; File: E16.MiscTool
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
badInputErr equ $0301 ; MiscTool error - bad input parameter
noDevParamErr equ $0302 ; MiscTool error - no device for input p
;arameter
taskInstlErr equ $0303 ; MiscTool error - task already installed
; error
noSigTaskErr equ $0304 ; MiscTool error - no signature in task h
;eader
queueDmgdErr equ $0305 ; MiscTool error - queue has been damaged
; error
taskNtFdErr equ $0306 ; MiscTool error - task was not found erro
;r
firmTaskErr equ $0307 ; MiscTool error - firmware task was unsuc
;cessful
hbQueueBadErr equ $0308 ; MiscTool error - heartbeat queue damag
;ed
unCnctdDevErr equ $0309 ; MT error - attempted to dispatch to un
;connected device
idTagNtAvlErr equ $030B ; MiscTool error - ID tag not available
pdosUnClmdIntErr equ $0001 ;MT- error - ProDOS unclaimed interru
;pt error
divByZeroErr equ $0004 ; MiscTool error - divide by zero error
pdosVCBErr equ $000A ; MiscTool error - ProDOS VCB unusable
pdosFCBErr equ $000B ; MiscTool error - ProDOS FCB unusable
pdosBlk0Err equ $000C ; MT error - ProDOS block zero allocated i
;llegally
pdosIntShdwErr equ $000D ; MT error - ProDOS interrupt w/ shadow
;ing off
segLoader1Err equ $0015 ; MiscTool error - segment loader error
sPackage0Err equ $0017 ; MiscTool error - can't load a package
package1Err equ $0018 ; MiscTool error - can't load a package
package2Err equ $0019 ; MiscTool error - can't load a package
package3Err equ $001A ; MiscTool error - can't load a package
package4Err equ $001B ; MiscTool error - can't load a package
package5Err equ $001C ; MiscTool error - can't load a package
package6Err equ $001D ; MiscTool error - can't load a package
package7Err equ $001E ; MiscTool error - can't load a package
package8Err equ $0020 ; MiscTool error - can't load a package
package9Err equ $0021 ; MiscTool error - can't load a package
package10Err equ $0022 ; MiscTool error - can't load a package
package11Err equ $0023 ; MiscTool error - can't load a package
package12Err equ $0024 ; MiscTool error - can't load a package
outOfMemErr equ $0025 ; MiscTool error - out of memory error
segLoader2Err equ $0026 ; MiscTool error - segment loader error
fMapTrshdErr equ $0027 ; MiscTool error - file map trashed
stkOvrFlwErr equ $0028 ; MiscTool error - stack overflow error
psInstDiskErr equ $0030 ; error - Please Insert Disk (file manag
;er alert)
memMgr1Err equ $0032 ; MiscTool error - memory manager error
memMgr2Err equ $0033 ; MiscTool error - memory manager error
memMgr3Err equ $0034 ; MiscTool error - memory manager error
memMgr4Err equ $0035 ; MiscTool error - memory manager error
memMgr5Err equ $0036 ; MiscTool error - memory manager error
memMgr6Err equ $0037 ; MiscTool error - memory manager error
memMgr7Err equ $0038 ; MiscTool error - memory manager error
memMgr8Err equ $0039 ; MiscTool error - memory manager error
memMgr9Err equ $003A ; MiscTool error - memory manager error
memMgr10Err equ $003B ; MiscTool error - memory manager error
memMgr11Err equ $003C ; MiscTool error - memory manager error
memMgr12Err equ $003D ; MiscTool error - memory manager error
memMgr13Err equ $003E ; MiscTool error - memory manager error
memMgr14Err equ $003F ; MiscTool error - memory manager error
memMgr15Err equ $0040 ; MiscTool error - memory manager error
memMgr16Err equ $0041 ; MiscTool error - memory manager error
memMgr17Err equ $0042 ; MiscTool error - memory manager error
memMgr18Err equ $0043 ; MiscTool error - memory manager error
memMgr19Err equ $0044 ; MiscTool error - memory manager error
memMgr20Err equ $0045 ; MiscTool error - memory manager error
memMgr21Err equ $0046 ; MiscTool error - memory manager error
memMgr22Err equ $0047 ; MiscTool error - memory manager error
memMgr23Err equ $0048 ; MiscTool error - memory manager error
memMgr24Err equ $0049 ; MiscTool error - memory manager error
memMgr25Err equ $004A ; MiscTool error - memory manager error
memMgr26Err equ $004B ; MiscTool error - memory manager error
memMgr27Err equ $004C ; MiscTool error - memory manager error
memMgr28Err equ $004D ; MiscTool error - memory manager error
memMgr29Err equ $004E ; MiscTool error - memory manager error
memMgr30Err equ $004F ; MiscTool error - memory manager error
memMgr31Err equ $0050 ; MiscTool error - memory manager error
memMgr32Err equ $0051 ; MiscTool error - memory manager error
memMgr33Err equ $0052 ; MiscTool error - memory manager error
memMgr34Err equ $0053 ; MiscTool error - memory manager error
stupVolMntErr equ $0100 ; can't mount system start up vol.
osecond equ $00 ; byte - TimeRec
ominute equ $01 ; byte - TimeRec
ohour equ $02 ; byte - TimeRec
oyear equ $03 ; byte - TimeRec
oday equ $04 ; byte - TimeRec
omonth equ $05 ; byte - TimeRec
oextra equ $06 ; byte - TimeRec
oweekDay equ $07 ; byte - TimeRec
omouseMode equ $00 ; byte - MouseRec
omouseStatus equ $01 ; byte - MouseRec
oyPos equ $02 ; word - MouseRec
oxPos equ $04 ; word - MouseRec
oyMaxClamp equ $00 ; word - ClampRec
oyMinClamp equ $02 ; word - ClampRec
oxMaxClamp equ $04 ; word - ClampRec
oxMinClamp equ $06 ; word - ClampRec
oyRegExit equ $00 ; word - FWRec
oxRegExit equ $02 ; word - FWRec
oaRegExit equ $04 ; word - FWRec
ostatus equ $06 ; word - FWRec
p1PrntModem equ $0000 ; Battery Ram Parameter Ref Number -
p1LineLnth equ $0001 ; Battery Ram Parameter Ref Number -
p1DelLine equ $0002 ; Battery Ram Parameter Ref Number -
p1AddLine equ $0003 ; Battery Ram Parameter Ref Number -
p1Echo equ $0004 ; Battery Ram Parameter Ref Number -
p1Buffer equ $0005 ; Battery Ram Parameter Ref Number -
p1Baud equ $0006 ; Battery Ram Parameter Ref Number -
p1DtStpBits equ $0007 ; Battery Ram Parameter Ref Number -
p1Parity equ $0008 ; Battery Ram Parameter Ref Number -
p1DCDHndShk equ $0009 ; Battery Ram Parameter Ref Number -
p1DSRHndShk equ $000A ; Battery Ram Parameter Ref Number -
p1XnfHndShk equ $000B ; Battery Ram Parameter Ref Number -
p2PrntModem equ $000C ; Battery Ram Parameter Ref Number -
p2LineLnth equ $000D ; Battery Ram Parameter Ref Number -
p2DelLine equ $000E ; Battery Ram Parameter Ref Number -
p2AddLine equ $000F ; Battery Ram Parameter Ref Number -
p2Echo equ $0010 ; Battery Ram Parameter Ref Number -
p2Buffer equ $0011 ; Battery Ram Parameter Ref Number -
p2Baud equ $0012 ; Battery Ram Parameter Ref Number -
p2DtStpBits equ $0013 ; Battery Ram Parameter Ref Number -
p2Parity equ $0014 ; Battery Ram Parameter Ref Number -
p2DCDHndShk equ $0015 ; Battery Ram Parameter Ref Number -
p2DSRHndShk equ $0016 ; Battery Ram Parameter Ref Number -
p2XnfHndShk equ $0017 ; Battery Ram Parameter Ref Number -
dspColMono equ $0018 ; Battery Ram Parameter Ref Number -
dsp40or80 equ $0019 ; Battery Ram Parameter Ref Number -
dspTxtColor equ $001A ; Battery Ram Parameter Ref Number -
dspBckColor equ $001B ; Battery Ram Parameter Ref Number -
dspBrdColor equ $001C ; Battery Ram Parameter Ref Number -
hrtz50or60 equ $001D ; Battery Ram Parameter Ref Number -
userVolume equ $001E ; Battery Ram Parameter Ref Number -
bellVolume equ $001F ; Battery Ram Parameter Ref Number -
sysSpeed equ $0020 ; Battery Ram Parameter Ref Number -
slt1intExt equ $0021 ; Battery Ram Parameter Ref Number -
slt2intExt equ $0022 ; Battery Ram Parameter Ref Number -
slt3intExt equ $0023 ; Battery Ram Parameter Ref Number -
slt4intExt equ $0024 ; Battery Ram Parameter Ref Number -
slt5intExt equ $0025 ; Battery Ram Parameter Ref Number -
slt6intExt equ $0026 ; Battery Ram Parameter Ref Number -
slt7intExt equ $0027 ; Battery Ram Parameter Ref Number -
startupSlt equ $0028 ; Battery Ram Parameter Ref Number -
txtDspLang equ $0029 ; Battery Ram Parameter Ref Number -
kybdLang equ $002A ; Battery Ram Parameter Ref Number -
kyBdBuffer equ $002B ; Battery Ram Parameter Ref Number -
kyBdRepSpd equ $002C ; Battery Ram Parameter Ref Number -
kyBdRepDel equ $002D ; Battery Ram Parameter Ref Number -
dblClkTime equ $002E ; Battery Ram Parameter Ref Number -
flashRate equ $002F ; Battery Ram Parameter Ref Number -
shftCpsLCas equ $0030 ; Battery Ram Parameter Ref Number -
fstSpDelKey equ $0031 ; Battery Ram Parameter Ref Number -
dualSpeed equ $0032 ; Battery Ram Parameter Ref Number -
hiMouseRes equ $0033 ; Battery Ram Parameter Ref Number -
dateFormat equ $0034 ; Battery Ram Parameter Ref Number -
clockFormat equ $0035 ; Battery Ram Parameter Ref Number -
rdMinRam equ $0036 ; Battery Ram Parameter Ref Number -
rdMaxRam equ $0037 ; Battery Ram Parameter Ref Number -
langCount equ $0038 ; Battery Ram Parameter Ref Number -
lang1 equ $0039 ; Battery Ram Parameter Ref Number -
lang2 equ $003A ; Battery Ram Parameter Ref Number -
lang3 equ $003B ; Battery Ram Parameter Ref Number -
lang4 equ $003C ; Battery Ram Parameter Ref Number -
lang5 equ $003D ; Battery Ram Parameter Ref Number -
lang6 equ $003E ; Battery Ram Parameter Ref Number -
lang7 equ $003F ; Battery Ram Parameter Ref Number -
lang8 equ $0040 ; Battery Ram Parameter Ref Number -
layoutCount equ $0041 ; Battery Ram Parameter Ref Number -
layout1 equ $0042 ; Battery Ram Parameter Ref Number -
layout2 equ $0043 ; Battery Ram Parameter Ref Number -
layout3 equ $0044 ; Battery Ram Parameter Ref Number -
layout4 equ $0045 ; Battery Ram Parameter Ref Number -
layout5 equ $0046 ; Battery Ram Parameter Ref Number -
layout6 equ $0047 ; Battery Ram Parameter Ref Number -
layout7 equ $0048 ; Battery Ram Parameter Ref Number -
layout8 equ $0049 ; Battery Ram Parameter Ref Number -
layout9 equ $004A ; Battery Ram Parameter Ref Number -
layout10 equ $004B ; Battery Ram Parameter Ref Number -
layout11 equ $004C ; Battery Ram Parameter Ref Number -
layout12 equ $004D ; Battery Ram Parameter Ref Number -
layout13 equ $004E ; Battery Ram Parameter Ref Number -
layout14 equ $004F ; Battery Ram Parameter Ref Number -
layout15 equ $0050 ; Battery Ram Parameter Ref Number -
layout16 equ $0051 ; Battery Ram Parameter Ref Number -
aTalkNodeNo equ $0080 ; Battery Ram Parameter Ref Number -
irqIntFlag equ $0000 ; GetAddr Param Ref No -
irqDataReg equ $0001 ; GetAddr Param Ref No -
irqSerial1 equ $0002 ; GetAddr Param Ref No -
irqSerial2 equ $0003 ; GetAddr Param Ref No -
irqAplTlkHi equ $0004 ; GetAddr Param Ref No -
tickCnt equ $0005 ; GetAddr Param Ref No -
irqVolume equ $0006 ; GetAddr Param Ref No -
irqActive equ $0007 ; GetAddr Param Ref No -
irqSndData equ $0008 ; GetAddr Param Ref No -
brkVar equ $0009 ; GetAddr Param Ref No -
evMgrData equ $000A ; GetAddr Param Ref No -
mouseSlot equ $000B ; GetAddr Param Ref No -
mouseClamps equ $000C ; GetAddr Param Ref No -
absClamps equ $000D ; GetAddr Param Ref No -
sccIntFlag equ $000E ; GetAddr Param Ref No -
ExtVGCInt equ $01 ; Hardware Interrupt Status - Returned by GetI
;RQEnable
ScanLineInt equ $02 ; Hardware Interrupt Status - Returned by Ge
;tIRQEnable
ADTBDataInt equ $04 ; Hardware Interrupt Status - Returned by Ge
;tIRQEnable
OneSecInt equ $10 ; Hardware Interrupt Status - Returned by GetI
;RQEnable
QuartSecInt equ $20 ; Hardware Interrupt Status - Returned by Ge
;tIRQEnable
VBInt equ $40 ; Hardware Interrupt Status - Returned by GetIRQEn
;able
KbdInt equ $80 ; Hardware Interrupt Status - Returned by GetIRQE
;nable
kybdEnable equ $0000 ; Interrupt Ref Number - Parameter to IntSo
;urce
kybdDisable equ $0001 ; Interrupt Ref Number - Parameter to IntS
;ource
vblEnable equ $0002 ; Interrupt Ref Number - Parameter to IntSou
;rce
vblDisable equ $0003 ; Interrupt Ref Number - Parameter to IntSo
;urce
qSecEnable equ $0004 ; Interrupt Ref Number - Parameter to IntSo
;urce
qSecDisable equ $0005 ; Interrupt Ref Number - Parameter to IntS
;ource
oSecEnable equ $0006 ; Interrupt Ref Number - Parameter to IntSo
;urce
oSecDisable equ $0007 ; Interrupt Ref Number - Parameter to IntS
;ource
adbEnable equ $000A ; Interrupt Ref Number - Parameter to IntSou
;rce
adbDisable equ $000B ; Interrupt Ref Number - Parameter to IntSo
;urce
scLnEnable equ $000C ; Interrupt Ref Number - Parameter to IntSo
;urce
scLnDisable equ $000D ; Interrupt Ref Number - Parameter to IntS
;ource
exVCGEnable equ $000E ; Interrupt Ref Number - Parameter to IntS
;ource
exVCGDisable equ $000F ; Interrupt Ref Number - Parameter to Int
;Source
mouseOff equ $0000 ; Mouse Mode Value -
transparent equ $0001 ; Mouse Mode Value -
transParnt equ $0001 ; Mouse Mode Value - (old name)
moveIntrpt equ $0003 ; Mouse Mode Value -
bttnIntrpt equ $0005 ; Mouse Mode Value -
bttnOrMove equ $0007 ; Mouse Mode Value -
mouseOffVI equ $0008 ; Mouse Mode Value -
transParntVI equ $0009 ; Mouse Mode Value - (old name)
transparentVI equ $0009 ; Mouse Mode Value -
moveIntrptVI equ $000B ; Mouse Mode Value -
bttnIntrptVI equ $000D ; Mouse Mode Value -
bttnOrMoveVI equ $000F ; Mouse Mode Value -
toolLoc1 equ $0000 ; Vector Ref Number -
toolLoc2 equ $0001 ; Vector Ref Number -
usrTLoc1 equ $0002 ; Vector Ref Number -
usrTLoc2 equ $0003 ; Vector Ref Number -
intrptMgr equ $0004 ; Vector Ref Number -
copMgr equ $0005 ; Vector Ref Number -
abortMgr equ $0006 ; Vector Ref Number -
sysFailMgr equ $0007 ; Vector Ref Number -
aTalkIntHnd equ $0008 ; Vector Ref Number -
sccIntHnd equ $0009 ; Vector Ref Number -
scLnIntHnd equ $000A ; Vector Ref Number -
sndIntHnd equ $000B ; Vector Ref Number -
vblIntHnd equ $000C ; Vector Ref Number -
mouseIntHnd equ $000D ; Vector Ref Number -
qSecIntHnd equ $000E ; Vector Ref Number -
kybdIntHnd equ $000F ; Vector Ref Number -
adbRBIHnd equ $0010 ; Vector Ref Number -
adbSRQHnd equ $0011 ; Vector Ref Number -
deskAccHnd equ $0012 ; Vector Ref Number -
flshBufHnd equ $0013 ; Vector Ref Number -
kybdMicHnd equ $0014 ; Vector Ref Number -
oneSecHnd equ $0015 ; Vector Ref Number -
extVCGHnd equ $0016 ; Vector Ref Number -
otherIntHnd equ $0017 ; Vector Ref Number -
crsrUpdtHnd equ $0018 ; Vector Ref Number -
incBsyFlag equ $0019 ; Vector Ref Number -
decBsyFlag equ $001A ; Vector Ref Number -
bellVector equ $001B ; Vector Ref Number -
breakVector equ $001C ; Vector Ref Number -
traceVector equ $001D ; Vector Ref Number -
stepVector equ $001E ; Vector Ref Number -
ctlYVector equ $0028 ; Vector Ref Number -
proDOSVctr equ $002A ; Vector Ref Number -
osVector equ $002B ; Vector Ref Number -
msgPtrVctr equ $002C ; Vector Ref Number -

51
src/macro/E16.NOTESYN.S Normal file
View File

@ -0,0 +1,51 @@
; File: E16.NoteSyn
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
; Note Syn errors
nsAlreadyInit equ $1901 ; Note Syn error - Note Syn already init
;ialized
nsSndNotInit equ $1902 ; Note Syn error - Sound Tools not initia
;lized
nsNotAvail equ $1921 ; Note Syn error - generator not available
nsBadGenNum equ $1922 ; Note Syn error - bad generator number
nsNotInit equ $1923 ; Note Syn error - Note Syn not initialized
nsGenAlreadyOn equ $1924 ; Note Syn error - generator already on
ost1BkPt equ $00 ; Envelope - [Byte]
ost1Increment equ $01 ; Envelope - [Word]
ost2BkPt equ $03 ; Envelope - [Byte]
ost2Increment equ $04 ; Envelope - [Word]
ost3BkPt equ $06 ; Envelope - [Byte]
ost3Increment equ $07 ; Envelope - [Word]
ost4BkPt equ $09 ; Envelope - [Byte]
ost4Increment equ $0A ; Envelope - [Word]
ost5BkPt equ $0C ; Envelope - [Byte]
ost5Increment equ $0D ; Envelope - [Word]
ost6BkPt equ $0F ; Envelope - [Byte]
ost6Increment equ $10 ; Envelope - [Word]
ost7BkPt equ $12 ; Envelope - [Byte]
ost7Increment equ $13 ; Envelope - [Word]
ost8BkPt equ $15 ; Envelope - [Byte]
ost8Increment equ $16 ; Envelope - [Word]
otheEnvelope equ $00 ; Instrument - [Envelope]
oreleaseSegment equ $18 ; Instrument - [Byte]
opriorityIncrement equ $19 ; Instrument - [Byte]
opitchBendRange equ $1A ; Instrument - [Byte]
ovibratoDepth equ $1B ; Instrument - [Byte]
ovibratoSpeed equ $1C ; Instrument - [Byte]
oinSpare equ $1D ; Instrument - [Byte]
oaWaveCount equ $1E ; Instrument - [Byte]
obWaveCount equ $1F ; Instrument - [Byte]
owfTopKey equ $0 ; Waveform - [Byte]
owfWaveAddress equ $01 ; Waveform - [Byte]
owfWaveSize equ $02 ; Waveform - [Byte]
owfDOCMode equ $03 ; Waveform - [Byte]
owfRelPitch equ $04 ; Waveform - [Word]

90
src/macro/E16.PRINT.S Normal file
View File

@ -0,0 +1,90 @@
; File: E16.Print
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
MemFullErr equ $FF80 ; Print error -
IOAbort equ $FFE5 ; Print error -
PrAbort equ $80 ; Print error -
missingDriver equ $1301 ; specified driver not in system/drivers
portNotOn equ $1302 ; specified port not selected in ctl panel
noPrintRecord equ $1303 ; no print record was given
badLaserPrep equ $1304 ; laser prep in laser writer incompatible
badLPFile equ $1305 ; laser prep in system/drivers incompatible
papConnNotOpen equ $1306 ; cannot connect to laser writer
papReadWriteErr equ $1307 ; apple talk PAPRead or PAPWrite error
startUpAlreadyMade equ $1321 ; low level startup already made
invalidCtlVal equ $1322 ; invalid control value has been spec'd
oiDev equ $0 ; Word - PrInfoRec - reserved for internal use
oiVRes equ $2 ; Word - PrInfoRec - vertical resolution of printe
;r
oiHRes equ $4 ; Word - PrInfoRec - horizontal resolution of prin
;ter
orPage equ $6 ; Rect - PrInfoRec - defining page rectangle
oiFstPage equ $0 ; Word - PrJobRec - first page to print
oiLstPage equ $2 ; Word - PrJobRec - last page to print
oiCopies equ $4 ; Word - PrJobRec - number of copies
obJDocLoop equ $6 ; Byte - PrJobRec - printing method
ofFromUser equ $7 ; Byte - PrJobRec - used internally
opIdleProc equ $9 ; Word - PrJobRec - background procedure
opFileName equ $D ; Pointer - PrJobRec - spool file name
oiFileVol equ $11 ; Word - PrJobRec - spool file volume referenc
;e number
obFileVers equ $13 ; Byte - PrJobRec - spool file version number
obJobX equ $14 ; Byte - PrJobRec - used internally
oprVersion equ $0 ; Word - PrRec - print manager version
oprInfo equ $2 ; PrInfoRec - PrRec - printer infomation subrecor
;d
orPaper equ $10 ; Rect - PrRec - Defining paper rectangle
oprStl equ $18 ; PrStyleRec - PrRec - style subrecord
oprInfoPT equ $2A ; Byte[14] - PrRec - reserved for internal use
oprXInfo equ $38 ; Byte[24] - PrRec - reserved for internal use
oprJob equ $50 ; PrJobRec - PrRec - job subrecord
oprintX equ $64 ; Byte[38] - PrRec - reserved for future use
oiReserved equ $8A ; Word - PrRec - reserved for internal use
oiTotPages equ $0 ; Word - PrStatusRec - number of pages in spoo
;l file
oiCurPage equ $2 ; Word - PrStatusRec - page being printed
oiTotCopes equ $4 ; Word - PrStatusRec - number of copies reques
;ted
oiCurCopy equ $6 ; Word - PrStatusRec - copy being printed
oiTotBands equ $8 ; Word - PrStatusRec - reserved for internal u
;se
oiCurBand equ $A ; Word - PrStatusRec - reserved for internal us
;e
ofPgDirty equ $C ; Boolean - PrStatusRec - TRUE if started print
;ing page
ofImaging equ $E ; Word - PrStatusRec - reserved for internal us
;e
ohPrint equ $10 ; PrRecHndl - PrStatusRec - handle of print reco
;rd
opPrPort equ $14 ; GrafPortPtr - PrStatusRec - pointer to grafpo
;rt being use for printing
ohPic equ $18 ; Word - PrStatusRec - reserved for internal use
owDev equ $0 ; Word - PrStyleRec - output quality information
ointernA equ $2 ; Word[3] - PrStyleRec - for internal use
ofeed equ $8 ; Word - PrStyleRec - paper feed type
opaperType equ $A ; Word - PrStyleRec - paper type
ocrWidth equ $C ; Word - PrStyleRec - carriage Width for image w
;riter
ovSizing equ $C ; Word - PrStyleRec - vertical sizing for lazer
;writer
oreduction equ $E ; Word - PrStyleRec - % reduction, laser write
;r only
ointernB equ $10 ; Word - PrStyleRec - for internal use
reset equ $0001 ; LLDControl - Printer control value - reset pri
;nter
formFeed equ $0002 ; LLDControl - Printer control value - form f
;eed
lineFeed equ $0003 ; LLDControl - Printer control value - line f
;eed

145
src/macro/E16.PRODOS.S Normal file
View File

@ -0,0 +1,145 @@
; File: E16.ProDOS
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
; ProDOS errors
invalidCallNum equ $01 ; ProDOS error - invalid call number
unclaimedIntErr equ $01 ; ProDOS error - fatal error - unclaimed
; interrupt
badPBlockPtr equ $05 ; ProDOS error - call pointer out of bounds
pdosActiveErr equ $06 ; ProDOS error - ProDOS is active
vcbUnusable equ $0A ; ProDOS error - fatal error - VCB unusable
fcbUnusable equ $0B ; ProDOS error - fatal error - FCB unusable
badBlockZero equ $0C ; ProDOS error - fatal error - block zero a
;llocated illegally
shdwInterruptErr equ $0D ; ProDOS error - fatal error - interrup
;t occured while I/O shadowing off
devNotFound equ $10 ; ProDOS error - device not found
badDevRefNum equ $11 ; ProDOS error - invalid device reference n
;umber
badReqCode equ $20 ; ProDOS error - invalid request code
intTableFull equ $25 ; ProDOS error - interrupt table full
invalidOperation equ $26 ; ProDOS error - invalid operation
ioError equ $27 ; ProDOS error - I/O error
noDevConnect equ $28 ; ProDOS error - no device connected
writeProtectErr equ $2B ; ProDOS error - write protect error
diskSwitchErr equ $2E ; ProDOS error - disk switched error
badPathname equ $40 ; ProDOS error - invalid pathname syntax
fcbFullErr equ $42 ; ProDOS error - FCB full error
badFileRefNum equ $43 ; ProDOS error - invalid file reference nu
;mber
pathNotFound equ $44 ; ProDOS error - path not found
volumeNotFound equ $45 ; ProDOS error - volume not found
fileNotFound equ $46 ; ProDOS error - file not found
dupFileName equ $47 ; ProDOS error - duplicate file name
volumeFullErr equ $48 ; ProDOS error - volume full error
dirFullErr equ $49 ; ProDOS error - directory full error
versionErr equ $4A ; ProDOS error - version error (incompatible
;file format)
badStoreType equ $4B ; ProDOS error - unsupported (or incorrect)
; storage type
eofEncountered equ $4C ; ProDOS error - end-of-file encountered
positionRangeErr equ $4D ; ProDOS error - position out of range
accessErr equ $4E ; ProDOS error - access not allowed
fileOpenErr equ $50 ; ProDOS error - file is open
dirDamaged equ $51 ; ProDOS error - directory structure is damag
;ed
badVolType equ $52 ; ProDOS error - unsupported volume type
paramRangeErr equ $53 ; ProDOS error - parameter out of range
memoryFullErr equ $54 ; ProDOS error - out of memory
vcbFullErr equ $55 ; ProDOS error - VCB full error
dupVolumeErr equ $57 ; ProDOS error - duplicate volume error
notBlkDevErr equ $58 ; ProDOS error - not a blocked device
invalidLevel equ $59 ; ProDOS error - invalid level
blkNumRangeErr equ $5A ; ProDOS error - block number out of rang
;e
notSameVolErr equ $5B ; ProDOS error - different volumes found o
;n ChangePath call
notExecSysFile equ $5C ; ProDOS error - not an executable system
; file
oblockDevNum equ $00 ; BlockRec - [Word]
oblockDataBuffer equ $02 ; BlockRec - [Ptr]
oblockNum equ $06 ; BlockRec - [Longint]
odevName equ $00 ; DevNumRec - [Ptr]
odevNum equ $04 ; DevNumRec - [Word]
oeofRefNum equ $00 ; EofRec - [Word]
oeofPosition equ $02 ; EofRec - [Longint]
ofileRefNum equ $00 ; FileIORec - [Word]
odataBuffer equ $02 ; FileIORec - [Ptr]
orequestCount equ $06 ; FileIORec - [Longint]
otransferCount equ $0A ; FileIORec - [Longint]
ofrPathname equ $00 ; FileRec - [Ptr]
ofrAccess equ $04 ; FileRec - [Word]
ofrFileType equ $06 ; FileRec - [Word]
ofrAuxType equ $08 ; FileRec - [Longint]
ofrStorageType equ $0A ; FileRec - [Word]
ofrCreateDate equ $0C ; FileRec - [Word]
ofrCreateTime equ $0E ; FileRec - [Word]
ofrModDate equ $10 ; FileRec - [Word]
ofrModTime equ $12 ; FileRec - [Word]
ofrBlocksUsed equ $14 ; FileRec - [Long]
;odevName GEQU $00 ; FormatRec/EraseDiskRec- device name
; pointer [pointer]
ovolName equ $04 ; FormatRec/EraseDiskRec - device name pointer
; [pointer]
ofileSysID equ $08 ; FormatRec/EraseDiskRec - file system ID [w
;ord]
ointNum equ $00 ; InterruptRec - [Word]
ointCode equ $02 ; InterruptRec - [Ptr]
olevel equ $00 ; LevelRec - [Word]
omarkRefNum equ $00 ; MarkRec - [Word]
oposition equ $02 ; MarkRec - [Long]
onewLRefNum equ $00 ; NewlineRec - [Word]
oenableMask equ $02 ; NewlineRec - [Word]
onewlineChar equ $04 ; NewlineRec - [Word]
oopenRefNum equ $00 ; OpenRec - [Word]
oopenPathname equ $02 ; OpenRec - [Ptr]
oioBuffer equ $06 ; OpenRec - [Handle]
;opathname GEQU $00 ; PathNameRec - [Ptr]
onewPathname equ $04 ; PathNameRec - [Ptr]
oprefixNum equ $00 ; PrefixRec - [Word]
oprefix equ $02 ; PrefixRec - [Ptr]
opdVersion equ $00 ; VersionRec - [Word]
ovrDeviceName equ $00 ; VolumeRec - [Ptr]
ovrVolName equ $04 ; VolumeRec - [Ptr]
ovrTotalBlocks equ $08 ; VolumeRec - [Long]
ovrFreeBlocks equ $0C ; VolumeRec - [Long]
ovrFileSysID equ $10 ; VolumeRec - [Word]
odiDevNum equ $00 ; DInfoRec - [Word]
odiDevName equ $02 ; DInfoRec - [Ptr]
odeRefNum equ $00 ; DirEntryRec - [Word]
odeReserved equ $02 ; DirEntryRec - [Word]
odeBase equ $04 ; DirEntryRec - [Word]
odeDisplacement equ $06 ; DirEntryRec - [Word]
odeNameBuffer equ $08 ; DirEntryRec - [Ptr]
odeEntryNum equ $0C ; DirEntryRec - [Word]
odeFileType equ $0E ; DirEntryRec - [Word]
odeEOF equ $10 ; DirEntryRec - [Long]
odeBlockCount equ $14 ; DirEntryRec - [Long]
odeCreateTime equ $18 ; DirEntryRec - [TimeRec]
odeModTime equ $20 ; DirEntryRec - [TimeRec]
odeAccess equ $28 ; DirEntryRec - [Word]
odeAuxType equ $2A ; DirEntryRec - [Long]
odeFileSysID equ $2E ; DirEntryRec - [Word]

196
src/macro/E16.QUICKDRAW.S Normal file
View File

@ -0,0 +1,196 @@
; File: E16.Quickdraw
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
alreadyInitialized equ $0401 ; Quickdraw error - Quickdraw alrea
;dy initialized
cannotReset equ $0402 ; Quickdraw error - never used
notInitialized equ $0403 ; Quickdraw error - Quickdraw not initi
;alized
screenReserved equ $0410 ; Quickdraw error - screen reserved
badRect equ $0411 ; Quickdraw error - bad rectangle
notEqualChunkiness equ $0420 ; Quickdraw error - Chunkiness is n
;ot equal
rgnAlreadyOpen equ $0430 ; Quickdraw error - region is already o
;pen
rgnNotOpen equ $0431 ; Quickdraw error - region is not open
rgnScanOverflow equ $0432 ; Quickdraw error - region scan overfl
;ow
rgnFull equ $0433 ; Quickdraw error - region is full
polyAlreadyOpen equ $0440 ; Quickdraw error - poly is already op
;en
polyNotOpen equ $0441 ; Quickdraw error - poly is not open
polyTooBig equ $0442 ; Quickdraw error - poly is too big
badTableNum equ $0450 ; Quickdraw error - bad table number
badColorNum equ $0451 ; Quickdraw error - bad color number
badScanLine equ $0452 ; Quickdraw error - bad scan line
notImplemented equ $04FF ; Quickdraw error - not implemented
omaxWidth equ $0 ; Word - BufDimRec -
otextBufHeight equ $2 ; Word - BufDimRec -
otextBufferWords equ $4 ; Word - BufDimRec -
ofontWidth equ $6 ; Word - BufDimRec -
ooffseToMF equ $00 ; Word - Font - fully defined front of the Fo
;nt record.
ofamily equ $02 ; Word - Font -
ostyle equ $04 ; TextStyle - Font -
osize equ $06 ; Word - Font -
oversion equ $08 ; Word - Font -
ofbrExtent equ $0A ; Word - Font -
ofgFontID equ $00 ; Word - FontGlobalsRecord - currently 12 byte
;s long, but may be expanded
ofgStyle equ $02 ; TextStyle - FontGlobalsRecord -
ofgSize equ $04 ; Word - FontGlobalsRecord -
ofgVersion equ $06 ; Word - FontGlobalsRecord -
ofgWidMax equ $08 ; Word - FontGlobalsRecord -
ofgFBRExtent equ $0A ; Word - FontGlobalsRecord -
oascent equ $00 ; Integer - FontInfoRecord -
odescent equ $02 ; Integer - FontInfoRecord -
owidMax equ $04 ; Integer - FontInfoRecord -
oleading equ $06 ; Integer - FontInfoRecord -
oportInfo equ $00 ; LocInfo - GrafPort -
oportRect equ $10 ; Rect - GrafPort - PortRect
oclipRgn equ $18 ; RgnHandle - GrafPort - Clip Rgn. Pointer
ovisRgn equ $1C ; RgnHandle - GrafPort - Vis. Rgn. Pointer
obkPat equ $20 ; Pattern - GrafPort - BackGround Pattern
opnLoc equ $40 ; Point - GrafPort - Pen Location
opnSize equ $44 ; Point - GrafPort - Pen Size
opnMode equ $48 ; Word - GrafPort - Pen Mode
opnPat equ $4A ; Pattern - GrafPort - Pen Pattern
opnMask equ $6A ; Mask - GrafPort - Pen Mask
opnVis equ $72 ; Word - GrafPort - Pen Visable
ofontHandle equ $74 ; FontHndl - GrafPort -
ofontID equ $78 ; FontID - GrafPort - Font ID
ofontFlags equ $7C ; Word - GrafPort - FontFlags
otxSize equ $7E ; Integer - GrafPort - Text Size
otxFace equ $80 ; TextStyle - GrafPort - Text Face
otxMode equ $82 ; Word - GrafPort - Text Mode
ospExtra equ $84 ; Fixed - GrafPort - Fixed Point Value
ochExtra equ $88 ; Fixed - GrafPort - Fixed Point Value
ofgColor equ $8C ; Word - GrafPort - ForeGround Color
obgColor equ $8E ; Word - GrafPort - BackGround Color
opicSave equ $90 ; Handle - GrafPort - PicSave
orgnSave equ $94 ; Handle - GrafPort - RgnSave
opolySave equ $98 ; Handle - GrafPort - PolySave
ografProcs equ $9C ; QdProcsPtr - GrafPort -
oarcRot equ $A0 ; Integer - GrafPort - ArcRot
ouserField equ $A2 ; Longint - GrafPort - UserField
osysField equ $A6 ; Longint - GrafPort - SysField
oportSCB equ $00 ; AnSCBByte - LocInfo -
oreserved equ $01 ; Byte - LocInfo -
optrToPixImage equ $02 ; Pointer - LocInfo - ImageRef
owidth equ $06 ; Word - LocInfo - Width
oboundsRect equ $08 ; Rect - LocInfo - BoundsRect
optrToSourceLocInfo equ $00 ; LocInfoPtr - PaintParam -
optrToDestLocInfo equ $04 ; LocInfoPtr - PaintParam -
optrToSourceRect equ $08 ; RectPtr - PaintParam -
optrToDestPoint equ $0C ; PointPtr - PaintParam -
omode equ $10 ; Word - PaintParam -
omaskHandle equ $12 ; Handle - PaintParam - clip region
opsPnLoc equ $00 ; Point - PenState -
opsPnSize equ $04 ; Point - PenState -
opsPnMode equ $08 ; Word - PenState -
opsPnPat equ $0A ; Pattern - PenState -
opsPnMask equ $2A ; Mask - PenState -
ostdText equ $00 ; Pointer - QDProcs -
ostdLine equ $04 ; Pointer - QDProcs -
ostdRect equ $08 ; Pointer - QDProcs -
ostdRRect equ $0C ; Pointer - QDProcs -
ostdOval equ $10 ; Pointer - QDProcs -
ostdArc equ $14 ; Pointer - QDProcs -
ostdPoly equ $18 ; Pointer - QDProcs -
ostdRgn equ $1C ; Pointer - QDProcs -
ostdPixels equ $20 ; Pointer - QDProcs -
ostdComment equ $24 ; Pointer - QDProcs -
ostdTxMeas equ $28 ; Pointer - QDProcs -
ostdTxBnds equ $2C ; Pointer - QDProcs -
ostdGetPic equ $30 ; Pointer - QDProcs -
ostdPutPic equ $34 ; Pointer - QDProcs -
orfFamNum equ $00 ; Word - RomFontRec -
orfFamStyle equ $02 ; Word - RomFontRec -
orfSize equ $04 ; Word - RomFontRec -
orfFontHandle equ $06 ; FontHndl - RomFontRec -
orfNamePtr equ $0A ; Pointer - RomFontRec -
orfFBRExtent equ $0E ; Word - RomFontRec -
colorTable equ $0F ; AnSCBByte - Mask for SCB color table
scbReserved equ $10 ; AnSCBByte - Mask for SCB reserved bit
scbFill equ $20 ; AnSCBByte - Mask for SCB fill bit
scbInterrupt equ $40 ; AnSCBByte - Mask for SCB interrupt bit
scbColorMode equ $80 ; AnSCBByte - Mask for SCB color mode bit
table320 equ $32 ; ColorData - (val=size)
table640 equ $32 ; ColorData - (val=size)
maskSize equ $08 ; GrafPort - Mask Size (val=size)
locSize equ $10 ; GrafPort - Loc Size (val=size)
patsize equ $20 ; GrafPort - Pattern Size (val=size)
pnStateSize equ $32 ; GrafPort - Pen State Size (Val=size)
portSize equ $AA ; GrafPort - Size of GrafPort
blueMask equ $000F ; ColorValue - Mask for Blue nibble
greenMask equ $00F0 ; ColorValue - Mask for green nibble
redMask equ $0F00 ; ColorValue - Mask for red nibble
widMaxSize equ $0001 ; FontFlags -
zeroSize equ $0002 ; FontFlags -
black equ $000 ; MasterColors - These work in 320 and 640 mode
blue equ $00F ; MasterColors - These work in 320 and 640 mode
darkGreen320 equ $080 ; MasterColors - These work in 320 mode
green320 equ $0E0 ; MasterColors - These work in 320 mode
green640 equ $0F0 ; MasterColors - These work in 640 mode
lightBlue320 equ $4DF ; MasterColors - These work in 320 mode
purple320 equ $72C ; MasterColors - These work in 320 mode
darkGray320 equ $777 ; MasterColors - These work in 320 mode
periwinkleBlue320 equ $78F ; MasterColors - These work in 320 mo
;de
brown320 equ $841 ; MasterColors - These work in 320 mode
lightGray320 equ $0CCC ; MasterColors - These work in 320 mode
red320 equ $0D00 ; MasterColors - These work in 320 mode
lilac320 equ $0DAF ; MasterColors - These work in 320 mode
red640 equ $0F00 ; MasterColors - These work in 640 mode
orange320 equ $0F70 ; MasterColors - These work in 320 mode
flesh320 equ $0FA9 ; MasterColors - These work in 320 mode
yellow equ $0FF0 ; MasterColors - These work in 320 and 640 mode
white equ $0FFF ; MasterColors - These work in 320 and 640 mode
modeCopy equ $0000 ; PenModeDATA -
modeOR equ $0001 ; PenModeDATA -
modeXOR equ $0002 ; PenModeDATA -
modeBIC equ $0003 ; PenModeDATA -
modeForeCopy equ $0004 ; PenModeDATA -
modeForeOR equ $0005 ; PenModeDATA -
modeForeXOR equ $0006 ; PenModeDATA -
modeForeBIC equ $0007 ; PenModeDATA -
modeNOT equ $8000 ; PenModeDATA -
notCopy equ $8000 ; PenModeDATA -
notOR equ $8001 ; PenModeDATA -
notXOR equ $8002 ; PenModeDATA -
notBIC equ $8003 ; PenModeDATA -
notForeCOPY equ $8004 ; PenModeDATA -
notForeOR equ $8005 ; PenModeDATA -
notForeXOR equ $8006 ; PenModeDATA -
notForeBIC equ $8007 ; PenModeDATA -
mode320 equ $0000 ; QDStartup - Argument to QDStartup
mode640 equ $0080 ; QDStartup - Argument to QDStartup
boldMask equ $0001 ; TextStyle - Mask for bold bit
italicMask equ $0002 ; TextStyle - Mask for italic bit
underlineMask equ $0004 ; TextStyle - Mask for underline bit
outlineMask equ $0008 ; TextStyle - Mask for outline bit
shadowMask equ $0010 ; TextStyle - Mask for shadow bit

130
src/macro/E16.SANE.S Normal file
View File

@ -0,0 +1,130 @@
*-----------------------------------------------------------
* FILE: E16.SANE
*
* Copyright Apple Computer, Inc. 1986, 1987
* All Rights Reserved
*
* These equates give assembly language access to 65816 SANE.
*-----------------------------------------------------------
*-----------------------------------------------------------
* Tool Set and Function Numbers.
*-----------------------------------------------------------
SANEtsNum = $A ; SANE tool set number
FPNum = $9 ; Function number for Arithmetic
DecStrNum = $A ; Function number for Scanner/Formatter
ElemNum = $B ; Function no. for Elementary functions
*-----------------------------------------------------------
* Operation code masks.
*-----------------------------------------------------------
FOADD = $00 ; add
FOSUB = $02 ; subtract
FOMUL = $04 ; multiply
FODIV = $06 ; divide
FOCMP = $08 ; compare, no exception from unordered
FOCPX = $0A ; compare, signal invalid if unordered
FOREM = $0C ; remainder
FOZ2X = $0E ; convert to extended
FOX2Z = $10 ; convert from extended
FOSQRT = $12 ; square root
FORTI = $14 ; round to integral value
FOTTI = $16 ; truncate to integral value
FOSCALB = $18 ; binary scale
FOLOGB = $1A ; binary log
FOCLASS = $1C ; classify
FONEXT = $1E ; next-after
FOSETENV = $01 ; set environment
FOGETENV = $03 ; get environment
FOSETHV = $05 ; set halt vector
FOGETHV = $07 ; get halt vector
FOD2B = $09 ; convert decimal to binary
FOB2D = $0B ; convert binary to decimal
FONEG = $0D ; negate
FOABS = $0F ; absolute value
FOCPYSGN = $11 ; copy sign
; UNDEFINED = $13
FOSETXCP = $15 ; set exception
FOPROCENTRY = $17 ; procedure-entry
FOPROCEXIT = $19 ; procedure-exit
FOTESTXCP = $1B ; test exception
; UNDEFINED = $1D
; UNDEFINED = $1F
*-----------------------------------------------------------
* Operand format masks.
*-----------------------------------------------------------
FFEXT = $000 ; extended -- 80-bit float
FFDBL = $100 ; double -- 64-bit float
FFSGL = $200 ; single -- 32-bit float
FFLNG = $300 ; longint -- 32-bit integer
FFINT = $400 ; integer -- 16-bit integer
FFCOMP = $500 ; comp -- 64-bit integer
; UNDEFINED = $600
; UNDEFINED = $700
*-----------------------------------------------------------
* Class and sign inquiries.
*-----------------------------------------------------------
FCSNAN = $FC ; -4: signaling NAN
FCQNAN = $FD ; -3: quiet NAN
FCINF = $FE ; -2: infinite
FCZERO = $FF ; -1: zero
FCNORM = $00 ; 0: normal
FCDENORM = $01 ; 1: denormal
*-----------------------------------------------------------
* Exceptions.
*-----------------------------------------------------------
FBINVALID = $1
FBUFLOW = $2
FBOFLOW = $4
FBDIVZER = $8
FBINEXACT = $10
*-----------------------------------------------------------
* Elementary function operation code masks.
*-----------------------------------------------------------
FOLNX = $00 ; base-e log
FOLOG2X = $02 ; base-2 log
FOLN1X = $04 ; ln (1 + x)
FOLOG21X = $06 ; log2 (1 + x)
FOEXPX = $08 ; base-e exponential
FOEXP2X = $0A ; base-2 exponential
FOEXP1X = $0C ; exp (x) - 1
FOEXP21X = $0E ; exp2 (x) - 1
FOXPWRI = $10 ; integer exponentiation
FOXPWRY = $12 ; general exponentiation
FOCOMPOUND = $14 ; compound
FOANNUITY = $16 ; annuity
FOATANX = $18 ; arctangent
FOSINX = $1A ; sine
FOCOSX = $1C ; cosine
FOTANX = $1E ; tangent
FORANDX = $20 ; random
*-----------------------------------------------------------
* Scanner and formatter operation code masks.
*-----------------------------------------------------------
FOPSTR2DEC = 0 ; Pascal string to decimal record
FOCSTR2DEC = 2 ; C string (char stream) to dec. record
FODEC2STR = 1 ; decimal record to (Pascal) string
*-----------------------------------------------------------
* NaN codes.
*-----------------------------------------------------------
NANSQRT = 1 ; Invalid square root such as sqrt(-1)
NANADD = 2 ; Invalid addition such as +INF - +INF
NANDIV = 4 ; Invalid division such as 0/0
NANMUL = 8 ; Invalid multiply such as 0 * INF
NANREM = 9 ; Invalid rem or mod such as x REM 0
NANASCBIN = 17 ; Conversion of invalid ASCII string
NANCOMP = 20 ; Comp NaN converted to floating
NANZERO = 21 ; Attempt to create a NaN with zero code
NANTRIG = 33 ; Invalid argument to trig routine
NANINVTRIG = 34 ; Invalid arg to inverse trig routine
NANLOG = 36 ; Invalid argument to log routine
NANPOWER = 37 ; Invalid argument to x^i or x^y routine
NANFINAN = 38 ; Invalid argument to financial function

17
src/macro/E16.SCRAP.S Normal file
View File

@ -0,0 +1,17 @@
;-----------------------------------------------------------
; FILE: E16.SCRAP
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
;
;
;-----------------------------------------------------------
badScrapType equ $1610 ; Scrap error - No scrap of this type.
textScrap equ $0000 ; scrapType -
picScrap equ $0001 ; scrapType -

22
src/macro/E16.SHELL.S Normal file
View File

@ -0,0 +1,22 @@
; File: E16.SHELL
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
; GET/SET_ LINFO parameter block
osfile equ $00 ; address of source file name
odfile equ $04 ; address of output file name
oparms equ $08 ; address of paramter list
oistring equ $0C ; address of language specific input string
omerr equ $10 ; max error level allowed
omerrf equ $11 ; max error level found
olops equ $12 ; operations flag
okflag equ $13 ; KEEP flag
omflags equ $14 ; set of letters selected with '-'
opflags equ $18 ; set of letters selected with '+'
oorg equ $1C ; abs start address of non-relloc load file

76
src/macro/E16.SOUND.S Normal file
View File

@ -0,0 +1,76 @@
; File: E16.Sound
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
noDOCFndErr equ $0810 ; Sound error - no DOC chip found
docAddrRngErr equ $0811 ; Sound error - DOC address range error
noSAppInitErr equ $0812 ; Sound error - no SAppInit call made
invalGenNumErr equ $0813 ; Sound error - invalid generator numbe
;r
synthModeErr equ $0814 ; Sound error - synthesizer mode error
genBusyErr equ $0815 ; Sound error - generator busy error
mstrIRQNotAssgnErr equ $0817 ; Sound error - master IRQ not assi
;gned
sndAlreadyStrtErr equ $0818 ; Sound error - sound tools already
;started
owaveStart equ $00 ; Pointer - SoundParamBlock - starting addres
;s of wave
owaveSize equ $04 ; Word - SoundParamBlock - waveform size in pa
;ges
ofreqOffset equ $06 ; Word - SoundParamBlock -
odocBuffer equ $08 ; Word - SoundParamBlock - DOC buffer start a
;ddress, low byte = 0
obufferSize equ $0A ; Word - SoundParamBlock - DOC buffer start
;address, low byte = 0
onextWavePtr equ $0C ; SoundPBPtr - SoundParamBlock - Pointer to
; start of next wave's parameter block
ovolSetting equ $10 ; Word - SoundParamBlock - DOC volume settin
;g. High byte = 0
ffSynthMode equ $0001 ; channelGenMode - Free form synthesizer m
;ode
noteSynthMode equ $0002 ; channelGenMode - Note synthesizer mode
;.
gen0off equ $0001 ; genMask - param to FFStopSound
gen1off equ $0002 ; genMask - param to FFStopSound
gen2off equ $0004 ; genMask - param to FFStopSound
gen3off equ $0008 ; genMask - param to FFStopSound
gen4off equ $0010 ; genMask - param to FFStopSound
gen5off equ $0020 ; genMask - param to FFStopSound
gen6off equ $0040 ; genMask - param to FFStopSound
gen7off equ $0080 ; genMask - param to FFStopSound
gen8off equ $0100 ; genMask - param to FFStopSound
gen9off equ $0200 ; genMask - param to FFStopSound
gen10off equ $0400 ; genMask - param to FFStopSound
gen11off equ $0800 ; genMask - param to FFStopSound
gen12off equ $1000 ; genMask - param to FFStopSound
gen13off equ $2000 ; genMask - param to FFStopSound
gen14off equ $4000 ; genMask - param to FFStopSound
genAvail equ $0000 ; genStatus - Generator available status
ffSynth equ $0100 ; genStatus - Free Form Synthesizer status
noteSynth equ $0200 ; genStatus - Note Synthesizer status
lastBlock equ $8000 ; genStatus - Last block of wave
readRegister equ $00 ; Jump Table Offset - Read Register routine
writeRegister equ $04 ; Jump Table Offset - Write Register routi
;ne
readRam equ $08 ; Jump Table Offset - Read Ram routine
writeRam equ $0C ; Jump Table Offset - Write Ram routine
readNext equ $10 ; Jump Table Offset - Read Next routine
writeNext equ $14 ; Jump Table Offset - Write Next routine
oscTable equ $18 ; Jump Table Offset - Pointer to Oscillator tab
;le
genTable equ $1C ; Jump Table Offset - Pointer to generator tabl
;e
gcbAddrTable equ $20 ; Jump Table Offset - Pointer to GCB addres
;s table
disableInc equ $24 ; Jump Table Offset - Disable Increment routi
;ne

27
src/macro/E16.STDFILE.S Normal file
View File

@ -0,0 +1,27 @@
;-----------------------------------------------------------
; FILE: E16.STDFILE
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
;
;
;-----------------------------------------------------------
ogood equ $00 ; Boolean - SFReplyRec - TRUE for open; FALSE for
;cancel
ofileType equ $02 ; Word - SFReplyRec - ProDOS file type
oauxFileType equ $04 ; Word - SFReplyRec - ProDOS aux file type
ofilename equ $06 ; Byte - SFReplyRec - Name of file in prefix 0
ofullPathname equ $22 ; Byte - SFReplyRec - The full pathname of
; the selected file.
noDisplay equ $0000 ; filterProc result - file not to be display
;ed
noSelect equ $0001 ; filterProc result - file displayed, but not
; selectable
displaySelect equ $0002 ; filterProc result - file displayed and
; selectable

49
src/macro/E16.TEXTTOOL.S Normal file
View File

@ -0,0 +1,49 @@
;-----------------------------------------------------------
; FILE: E16.TEXT
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
;
;
;-----------------------------------------------------------
badDevType equ $0C01 ; TextTool error - not implemented
badDevNum equ $0C02 ; TextTool error - Illegal device number.
badMode equ $0C03 ; TextTool error - Bad mode: illegal operation
;.
unDefHW equ $0C04 ; TextTool error - Undefined hardware error
lostDev equ $0C05 ; TextTool error - Lost device: Device no long
;er on line
lostFile equ $0C06 ; TextTool error - File no longer in diskette
; directory
badTitle equ $0C07 ; TextTool error - Illegal Filename
noRoom equ $0C08 ; TT error - Insufficient space on specified di
;skette
noDevice equ $0C09 ; TextTool error - Volume not online
noFile equ $0C0A ; TextTool error - File not in specifiled direc
;tory
dupFile equ $0C0B ; TextTool error - Filename already exists
notClosed equ $0C0C ; TextTool error - Attempt to open an open f
;ile
notOpen equ $0C0D ; TextTool error - Attempt to close closed fil
;e
badFormat equ $0C0E ; TextTool error - error reading real or int
;eger
ringBuffOFlo equ $0C0F ; TextTool error - Chars arriving too fas
;t
writeProtected equ $0C10 ; TextTool error -
devErr equ $0C40 ; TextTool error - Read or Write failed
input equ $0000 ; deviceNum -
output equ $0001 ; deviceNum -
errorOutput equ $0002 ; deviceNum -
basicType equ $0000 ; deviceType -
pascalType equ $0001 ; deviceType -
ramBased equ $0002 ; deviceType -
noEcho equ $0000 ; echoFlag -
echo equ $0001 ; echoFlag -

185
src/macro/E16.WINDOW.S Normal file
View File

@ -0,0 +1,185 @@
; File: E16.Window
;
;
; Copyright Apple Computer, Inc. 1986, 1987
; All Rights Reserved
;
;
paramLenErr equ $0E01 ; Window error - first word of parameter l
;ist is the wrong size
allocateErr equ $0E02 ; Window error - unable to allocate window
; record
taskMaskErr equ $0E03 ; Window error - bits 12-15 are not clear
;in WmTaskMask field of WmTaskRec
owNext equ $00 ; GrafPortPtr - WindRec - Pointer to next window
;Record.
oport equ $04 ; GrafPort - WindRec - Window's port.
owPadding equ $AE ; 16 Bytes - WindRec - Space for possible futu
;re expansion
owStrucRgn equ $BE ; RgnHandle - WindRec - Region of frame plus
;content.
owContRgn equ $C2 ; RgnHandle - WindRec - Content region.
owUpdateRgn equ $C6 ; RgnHandle - WindRec - Update region.
owControls equ $CA ; CtlRecHndl - WindRec - Window's control lis
;t.
owFrameCtrls equ $CE ; CtlRecHndl - WindRec - Window frame's con
;trol list.
owFrame equ $D2 ; Word - WindRec - Bit flags.
oframeColor equ $00 ; Word - WindColor - Color of window frame.
otitleColor equ $02 ; Word - WindColor - Color of title and bar.
otBarColor equ $04 ; Word - WindColor - Color/pattern of title b
;ar.
ogrowColor equ $06 ; Word - WindColor - Color of grow box.
oinfoColor equ $08 ; Word - WindColor - Color of information bar
;.
oparamLength equ $00 ; Word - ParamList - Parameter to NewWindow
;.
owFrameBits equ $02 ; Word - ParamList - Parameter to NewWindow.
owTitle equ $04 ; Pointer - ParamList - Parameter to NewWindow.
owRefCon equ $08 ; Long - ParamList - Parameter to NewWindow.
owZoom equ $0C ; Rect - ParamList - Parameter to NewWindow.
owColor equ $14 ; WindColorPtr - ParamList - Parameter to NewWin
;dow.
owYOrigin equ $18 ; Integer - ParamList - Parameter to NewWindow
;.
owXOrigin equ $1A ; Integer - ParamList - Parameter to NewWindow
;.
owDataH equ $1C ; Word - ParamList - Parameter to NewWindow.
owDataW equ $1E ; Word - ParamList - Parameter to NewWindow.
owMaxH equ $20 ; Word - ParamList - Parameter to NewWindow.
owMaxW equ $22 ; Word - ParamList - Parameter to NewWindow.
owScrollVer equ $24 ; Word - ParamList - Parameter to NewWindow.
owScrollHor equ $26 ; Word - ParamList - Parameter to NewWindow.
owPageVer equ $28 ; Word - ParamList - Parameter to NewWindow.
owPageHor equ $2A ; Word - ParamList - Parameter to NewWindow.
owInfoRefCon equ $2C ; Long - ParamList - Parameter to NewWindow
;.
owInfoHeight equ $30 ; Word - ParamList - height of information
;bar
owFrameDefProc equ $32 ; Pointer - ParamList - Parameter to NewW
;indow.
owInfoDefProc equ $36 ; Pointer - ParamList - Parameter to NewWi
;ndow.
owContDefProc equ $3A ; Pointer - ParamList - Parameter to NewWi
;ndow.
owPosition equ $3E ; Rect - ParamList - Parameter to NewWindow.
owPlane equ $46 ; GrafPortPtr - ParamList - Parameter to NewWind
;ow.
owStorage equ $4A ; WindRecPtr - ParamList - Parameter to NewWin
;dow.
owmWhat equ $00 ; Word - WmTaskRec -
owmMessage equ $02 ; Long - WmTaskRec -
owmWhen equ $06 ; Long - WmTaskRec -
owmWhere equ $0A ; Point - WmTaskRec -
owmModifiers equ $0E ; Word - WmTaskRec -
owmTaskData equ $10 ; Long - WmTaskRec - TaskMaster return value
;.
owmTaskMask equ $14 ; Long - WmTaskRec - TaskMaster feature mask
;.
wNoConstraint equ $0000 ; Axis parameter - No constraint on move
;ment.
wHAxisOnly equ $0001 ; Axis parameter - Horizontal axis only.
wVAxisOnly equ $0002 ; Axis parameter - Vertical axis only.
FromDesk equ $00 ; Desktop Command - Subtract region from deskto
;p
ToDesk equ $1 ; Desktop Command - Add region to desktop
GetDesktop equ $2 ; Desktop Command - Get Handle of Desktop regi
;on
SetDesktop equ $3 ; Desktop Command - Set Handle of Desktop regi
;on
GetDeskPat equ $4 ; Desktop command - Address of pattern or dra
;wing routine
SetDeskPat equ $5 ; Desktop command - Change Address of pattern
; or drawing routine
GetVisDesktop equ $6 ; Desktop command - Get destop region less
;visible windows.
BackGroundRgn equ $7 ; Desktop command - For drawing directly on
; desktop.
toBottom equ -2 ; SendBehind value - To send window to bottom.
topMost equ -1 ; SendBehind value - To make window top.
bottomMost equ $0000 ; SendBehind value - To make window bottom.
tmMenuKey equ $0001 ; Task Mask -
tmUpdate equ $0002 ; Task Mask -
tmFindW equ $0004 ; Task Mask -
tmMenuSel equ $0008 ; Task Mask -
tmOpenNDA equ $0010 ; Task Mask -
tmSysClick equ $0020 ; Task Mask -
tmDragW equ $0040 ; Task Mask -
tmContent equ $0080 ; Task Mask -
tmClose equ $0100 ; Task Mask -
tmZoom equ $0200 ; Task Mask -
tmGrow equ $0400 ; Task Mask -
tmScroll equ $0800 ; Task Mask -
tmSpecial equ $1000 ; Task Mask -
tmCRedraw equ $2000 ; Task Mask -
tmInactive equ $4000 ; Task Mask -
tmInfo equ $8000 ; Task Mask -
wNoHit equ $0000 ; TaskMaster codes - retained for back compatib
;ility.
inNull equ $0000 ; TaskMaster codes - retained for back compatib
;ility
inKey equ $0003 ; TaskMaster codes - retained for back compatibi
;lity
inButtDwn equ $0001 ; TaskMaster codes - retained for back compa
;tibility
inUpdate equ $0006 ; TaskMaster codes - retained for back compat
;ibility
wInDesk equ $0010 ; TaskMaster codes - On Desktop
wInMenuBar equ $0011 ; TaskMaster codes - On system menu bar
wClickCalled equ $0012 ; TaskMaster codes - system click called
wInContent equ $0013 ; TaskMaster codes - In content region
wInDrag equ $0014 ; TaskMaster codes - In drag region
wInGrow equ $0015 ; TaskMaster codes - In grow region, active wi
;ndow only
wInGoAway equ $0016 ; TaskMaster codes - In go-away region, acti
;ve window only
wInZoom equ $0017 ; TaskMaster codes - In zoom region, active wi
;ndow only
wInInfo equ $0018 ; TaskMaster codes - In information bar
wInSpecial equ $0019 ; TaskMaster codes - Item ID selected was 2
;50 - 255
wInDeskItem equ $001A ; TaskMaster codes - Item ID selected was
;1 - 249
wInFrame equ $1B ; TaskMaster codes - in Frame, but not on anyth
;ing else
wInactMenu equ $1C ; TaskMaster codes - "selection" of inactive
;menu item
wInSysWindow equ $8000 ; TaskMaster codes - hi bit set for syste
;m windows
wDraw equ $00 ; VarCode - Draw window frame command.
wHit equ $01 ; VarCode - Hit test command.
wCalcRgns equ $02 ; VarCode - Compute regions command.
wNew equ $03 ; VarCode - Initialization command.
wDispose equ $04 ; VarCode - Dispose command.
fHilited equ $0001 ; WFrame - Window is highlighted.
fZoomed equ $0002 ; WFrame - Window is zoomed.
fAllocated equ $0004 ; WFrame - Window record was allocated.
fCtlTie equ $0008 ; WFrame - Window state tied to controls.
fInfo equ $0010 ; WFrame - Window has an information bar.
fVis equ $0020 ; WFrame - Window is visible.
fQContent equ $0040 ; WFrame -
fMove equ $0080 ; WFrame - Window is movable.
fZoom equ $0100 ; WFrame - Window is zoomable.
fFlex equ $0200 ; WFrame -
fGrow equ $0400 ; WFrame - Window has grow box.
fBScroll equ $0800 ; WFrame - Window has horizontal scroll bar.
fRScroll equ $1000 ; WFrame - Window has vertical scroll bar.
fAlert equ $2000 ; WFrame -
fClose equ $4000 ; WFrame - Window has a close box.
fTitle equ $8000 ; WFrame - Window has a title bar.
windSize equ $145 ; WindRec - Size of WindRec.
wmTaskRecSize equ $16 ; WmTaskRec - Size of WmTaskRec.

143
src/macro/EVENT.MACS.S Normal file
View File

@ -0,0 +1,143 @@
* Event Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_EMBootInit MAC
Tool $106
<<<
~EMStartUp MAC
PxW ]1;]2;]3;]4
PxW ]5;]6;]7
_EMStartUp MAC
Tool $206
<<<
_EMShutDown MAC
Tool $306
<<<
~EMVersion MAC
PHA
_EMVersion MAC
Tool $406
<<<
_EMReset MAC
Tool $506
<<<
~EMStatus MAC
PHA
_EMStatus MAC
Tool $606
<<<
~DoWindows MAC
PHA
_DoWindows MAC
Tool $906
<<<
~GetNextEvent MAC
PHA
PHWL ]1;]2
_GetNextEvent MAC
Tool $A06
<<<
~EventAvail MAC
PHA
PHWL ]1;]2
_EventAvail MAC
Tool $B06
<<<
~GetMouse MAC
PHL ]1
_GetMouse MAC
Tool $C06
<<<
~Button MAC
P1SW ]1
_Button MAC
Tool $D06
<<<
~StillDown MAC
P1SW ]1
_StillDown MAC
Tool $E06
<<<
~WaitMouseUp MAC
P1SW ]1
_WaitMouseUp MAC
Tool $F06
<<<
~TickCount MAC
PHS 2
_TickCount MAC
Tool $1006
<<<
~GetDblTime MAC
PHS 2
_GetDblTime MAC
Tool $1106
<<<
~GetCaretTime MAC
PHS 2
_GetCaretTime MAC
Tool $1206
<<<
_SetSwitch MAC
Tool $1306
<<<
~PostEvent MAC
PHA
PHWL ]1;]2
_PostEvent MAC
Tool $1406
<<<
~FlushEvents MAC
PHA
PxW ]1;]2
_FlushEvents MAC
Tool $1506
<<<
~GetOSEvent MAC
PHA
PHWL ]1;]2
_GetOSEvent MAC
Tool $1606
<<<
~OSEventAvail MAC
PHA
PHWL ]1;]2
_OSEventAvail MAC
Tool $1706
<<<
~SetEventMask MAC
PHW ]1
_SetEventMask MAC
Tool $1806
<<<
~FakeMouse MAC
PxW ]1;]2;]3;]4
PHW ]5
_FakeMouse MAC
Tool $1906
<<<
~SetAutoKeyLimit MAC
PHW ]1
_SetAutoKeyLimit MAC
Tool $1A06
<<<
~GetKeyTranslation MAC
P1SW ]1
_GetKeyTranslation MAC
Tool $1B06
<<<
~SetKeyTranslation MAC
PHW ]1
_SetKeyTranslation MAC
Tool $1C06
<<<
~qEMStartUp MAC
NextDP ]1;$100
PxW ]2;]3;]4;]5
PxW ]6;]7
Tool $206
<<<

141
src/macro/FONT.MACS.S Normal file
View File

@ -0,0 +1,141 @@
* Font Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_FMBootInit MAC
Tool $11B
<<<
~FMStartUp MAC
PxW ]1;]2
_FMStartUp MAC
Tool $21B
<<<
_FMShutDown MAC
Tool $31B
<<<
~FMVersion MAC
PHA
_FMVersion MAC
Tool $41B
<<<
_FMReset MAC
Tool $51B
<<<
~FMStatus MAC
PHA
_FMStatus MAC
Tool $61B
<<<
~CountFamilies MAC
P1SW ]1
_CountFamilies MAC
Tool $91B
<<<
~FindFamily MAC
P1SW ]1
PHWL ]2;]3
_FindFamily MAC
Tool $A1B
<<<
~GetFamInfo MAC
PHA
PHWL ]1;]2
_GetFamInfo MAC
Tool $B1B
<<<
~GetFamNum MAC
P1SL ]1
_GetFamNum MAC
Tool $C1B
<<<
~AddFamily MAC
PHWL ]1;]2
_AddFamily MAC
Tool $D1B
<<<
~InstallFont MAC
PHLW ]1;]2
_InstallFont MAC
Tool $E1B
<<<
~SetPurgeStat MAC
PHLW ]1;]2
_SetPurgeStat MAC
Tool $F1B
<<<
~CountFonts MAC
P1SL ]1
PHW ]2
_CountFonts MAC
Tool $101B
<<<
~FindFontStats MAC
PHLW ]1;]2
PHWL ]3;]4
_FindFontStats MAC
Tool $111B
<<<
~LoadFont MAC
PHLW ]1;]2
PHWL ]3;]4
_LoadFont MAC
Tool $121B
<<<
_LoadSysFont MAC
Tool $131B
<<<
~AddFontVar MAC
PHLW ]1;]2
_AddFontVar MAC
Tool $141B
<<<
~FixFontMenu MAC
PxW ]1;]2;]3
_FixFontMenu MAC
Tool $151B
<<<
~ChooseFont MAC
P2SL ]1
PHW ]2
_ChooseFont MAC
Tool $161B
<<<
~ItemID2FamNum MAC
P1SW ]1
_ItemID2FamNum MAC
Tool $171B
<<<
~FMSetSysFont MAC
PHL ]1
_FMSetSysFont MAC
Tool $181B
<<<
~FMGetSysFID MAC
PHS 2
_FMGetSysFID MAC
Tool $191B
<<<
~FMGetCurFID MAC
PHS 2
_FMGetCurFID MAC
Tool $1A1B
<<<
~FamNum2ItemID MAC
P1SW ]1
_FamNum2ItemID MAC
Tool $1B1B
<<<
~InstallWithStats MAC
PHLW ]1;]2
PHL ]3
_InstallWithStats MAC
Tool $1C1B
<<<
~qFMStartUp MAC
PHW ]1
NextDP ]2;$100
Tool $21B
<<<

38
src/macro/GSOS.MACS.S Normal file
View File

@ -0,0 +1,38 @@
* File: MGSOS
*
* Copyright 1989 by Dave Klimas
*
* IMPORTANT! To use these macros, you must also include the
* label equates as defined in the file E16.GSOS from the TOOL.EQUATES
* directory.
*-----------------------------------------------
*
* xGSOS <callname>;<recpointer>;class 0/1 flag
*
* iGSOS _Create;addr;0 ;this is a class 0 Create call
*
*-----------------------------------------------
* Inline GS/OS call macro
iGSOS MAC
JSL $E100A8
DO ]3
DA ]1.$2000
ELSE
DA ]1
FIN
ADRL ]2
<<<
*-----------------------------------------------
* Stack GS/OS call macro
sGSOS MAC
PHL ]2
DO ]3
PEA ]1.$2000
ELSE
PEA ]1
FIN
JSL $E100B0
<<<

220
src/macro/INT.MACS.S Normal file
View File

@ -0,0 +1,220 @@
* Integer Math macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_IMBootInit MAC
Tool $10B
<<<
_IMStartUp MAC
_IntStartUp MAC
Tool $20B
<<<
_IMShutDown MAC
_IntShutDown MAC
Tool $30B
<<<
~IMVersion MAC
PHA
_IMVersion MAC
Tool $40B
<<<
_IMReset MAC
Tool $50B
<<<
~IMStatus MAC
PHA
_IMStatus MAC
Tool $60B
<<<
~Multiply MAC
PHS 2
PxW ]1;]2
_Multiply MAC
Tool $90B
<<<
~SDivide MAC
PHS 2
PxW ]1;]2
_SDivide MAC
Tool $A0B
<<<
~UDivide MAC
PHS 2
PxW ]1;]2
_UDivide MAC
Tool $B0B
<<<
~LongMul MAC
PHS 4
PxL ]1;]2
_LongMul MAC
Tool $C0B
<<<
~LongDivide MAC
PHS 4
PxL ]1;]2
_LongDivide MAC
Tool $D0B
<<<
~FixRatio MAC
PHS 2
PxW ]1;]2
_FixRatio MAC
Tool $E0B
<<<
~FixMul MAC
PHS 2
PxL ]1;]2
_FixMul MAC
Tool $F0B
<<<
~FracMul MAC
PHS 2
PxL ]1;]2
_FracMul MAC
Tool $100B
<<<
~FixDiv MAC
PHS 2
PxL ]1;]2
_FixDiv MAC
Tool $110B
<<<
~FracDiv MAC
PHS 2
PxL ]1;]2
_FracDiv MAC
Tool $120B
<<<
~FixRound MAC
P1SL ]1
_FixRound MAC
Tool $130B
<<<
~FracSqrt MAC
P2SL ]1
_FracSqrt MAC
Tool $140B
<<<
~FracCos MAC
P2SL ]1
_FracCos MAC
Tool $150B
<<<
~FracSin MAC
P2SL ]1
_FracSin MAC
Tool $160B
<<<
~FixATan2 MAC
PHS 2
PxL ]1;]2
_FixATan2 MAC
Tool $170B
<<<
~HiWord MAC
P1SL ]1
_HiWord MAC
Tool $180B
<<<
~LoWord MAC
P1SL ]1
_LoWord MAC
Tool $190B
<<<
~Long2Fix MAC
P2SL ]1
_Long2Fix MAC
Tool $1A0B
<<<
~Fix2Long MAC
P2SL ]1
_Fix2Long MAC
Tool $1B0B
<<<
~Fix2Frac MAC
P2SL ]1
_Fix2Frac MAC
Tool $1C0B
<<<
~Frac2Fix MAC
P2SL ]1
_Frac2Fix MAC
Tool $1D0B
<<<
~Fix2X MAC
PxL ]1;]2
_Fix2X MAC
Tool $1E0B
<<<
~Frac2X MAC
PxL ]1;]2
_Frac2X MAC
Tool $1F0B
<<<
~X2Fix MAC
P2SL ]1
_X2Fix MAC
Tool $200B
<<<
~X2Frac MAC
P2SL ]1
_X2Frac MAC
Tool $210B
<<<
~Int2Hex MAC
PHW ]1
PHLW ]2;]3
_Int2Hex MAC
Tool $220B
<<<
~Long2Hex MAC
PxL ]1;]2
PHW ]3
_Long2Hex MAC
Tool $230B
<<<
~Hex2Int MAC
PHA
PHLW ]1;]2
_Hex2Int MAC
Tool $240B
<<<
~Hex2Long MAC
PHS 2
PHLW ]1;]2
_Hex2Long MAC
Tool $250B
<<<
~Int2Dec MAC
PHWL ]1;]2
PxW ]3;]4
_Int2Dec MAC
Tool $260B
<<<
~Long2Dec MAC
PxL ]1;]2
PxW ]3;]4
_Long2Dec MAC
Tool $270B
<<<
~Dec2Int MAC
P1SL ]1
PxW ]2;]3
_Dec2Int MAC
Tool $280B
<<<
~Dec2Long MAC
P2SL ]1
PxW ]2;]3
_Dec2Long MAC
Tool $290B
<<<
~HexIt MAC
P2SW ]1
_HexIt MAC
Tool $2A0B
<<<

179
src/macro/LINE.MACS.S Normal file
View File

@ -0,0 +1,179 @@
* LineEdit macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_LEBootInit MAC
Tool $114
<<<
~LEStartUp MAC
PxW ]1;]2
_LEStartUp MAC
Tool $214
<<<
_LEShutDown MAC
Tool $314
<<<
~LEVersion MAC
PHA
_LEVersion MAC
Tool $414
<<<
_LEReset MAC
Tool $514
<<<
~LEStatus MAC
PHA
_LEStatus MAC
Tool $614
<<<
~LENew MAC
P2SL ]1
PHLW ]2;]3
_LENew MAC
Tool $914
<<<
~LEDispose MAC
PHL ]1
_LEDispose MAC
Tool $A14
<<<
~LESetText MAC
PHL ]1
PHWL ]2;]3
_LESetText MAC
Tool $B14
<<<
~LEIdle MAC
PHL ]1
_LEIdle MAC
Tool $C14
<<<
~LEClick MAC
PxL ]1;]2
_LEClick MAC
Tool $D14
<<<
~LESetSelect MAC
PxW ]1;]2
PHL ]3
_LESetSelect MAC
Tool $E14
<<<
~LEActivate MAC
PHL ]1
_LEActivate MAC
Tool $F14
<<<
~LEDeactivate MAC
PHL ]1
_LEDeactivate MAC
Tool $1014
<<<
~LEKey MAC
PxW ]1;]2
PHL ]3
_LEKey MAC
Tool $1114
<<<
~LECut MAC
PHL ]1
_LECut MAC
Tool $1214
<<<
~LECopy MAC
PHL ]1
_LECopy MAC
Tool $1314
<<<
~LEPaste MAC
PHL ]1
_LEPaste MAC
Tool $1414
<<<
~LEDelete MAC
PHL ]1
_LEDelete MAC
Tool $1514
<<<
~LEInsert MAC
PHL ]1
PHWL ]2;]3
_LEInsert MAC
Tool $1614
<<<
~LEUpdate MAC
PHL ]1
_LEUpdate MAC
Tool $1714
<<<
~LETextBox MAC
PHLW ]1;]2
PHLW ]3;]4
_LETextBox MAC
Tool $1814
<<<
_LEFromScrap MAC
Tool $1914
<<<
_LEToScrap MAC
Tool $1A14
<<<
~LEScrapHandle MAC
PHS 2
_LEScrapHandle MAC
Tool $1B14
<<<
~LEGetScrapLen MAC
PHA
_LEGetScrapLen MAC
Tool $1C14
<<<
~LESetScrapLen MAC
PHW ]1
_LESetScrapLen MAC
Tool $1D14
<<<
~LESetHilite MAC
PxL ]1;]2
_LESetHilite MAC
Tool $1E14
<<<
~LESetCaret MAC
PxL ]1;]2
_LESetCaret MAC
Tool $1F14
<<<
~LETextBox2 MAC
PHLW ]1;]2
PHLW ]3;]4
_LETextBox2 MAC
Tool $2014
<<<
~LESetJust MAC
PHWL ]1;]2
_LESetJust MAC
Tool $2114
<<<
~LEGetTextHand MAC
P2SL ]1
_LEGetTextHand MAC
Tool $2214
<<<
~LEGetTextLen MAC
P1SL ]1
_LEGetTextLen MAC
Tool $2314
<<<
~GetLEDefProc MAC
PHS 2
_GetLEDefProc MAC
Tool $2414
<<<
~qLEStartUp MAC
PHW ]1
NextDP ]2;$100
Tool $214
<<<

104
src/macro/LIST.MACS.S Normal file
View File

@ -0,0 +1,104 @@
* List Mgr. macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_ListBootInit MAC
Tool $011C
<<<
_ListStartup MAC
Tool $021C
<<<
_ListShutDown MAC
Tool $031C
<<<
~ListVersion MAC
PHA
_ListVersion MAC
Tool $041C
<<<
_ListReset MAC
Tool $051C
<<<
~ListStatus MAC
PHA
_ListStatus MAC
Tool $061C
<<<
~CreateList MAC
PHS 2
PxL ]1;]2
_CreateList MAC
Tool $091C
<<<
~SortList MAC
PxL ]1;]2
_SortList MAC
Tool $0A1C
<<<
~NextMember MAC
PHS 2
PxL ]1;]2
_NextMember MAC
Tool $0B1C
<<<
~DrawMember MAC
PxL ]1;]2
_DrawMember MAC
Tool $0C1C
<<<
~SelectMember MAC
PxL ]1;]2
_SelectMember MAC
Tool $0D1C
<<<
~GetListDefProc MAC
PHS 2
_GetListDefProc MAC
Tool $0E1C
<<<
~ResetMember MAC
P2SL ]1
_ResetMember MAC
Tool $0F1C
<<<
~NewList MAC
PxL ]1;]2
_NewList MAC
Tool $101C
<<<
~DrawMember2 MAC
PHWL ]1;]2
_DrawMember2 MAC
Tool $111C
<<<
~NextMember2 MAC
PHA
PHWL ]1;]2
_NextMember2 MAC
Tool $121C
<<<
~ResetMember2 MAC
P1SL ]1
_ResetMember2 MAC
Tool $131C
<<<
~SelectMember2 MAC
PHWL ]1;]2
_SelectMember2 MAC
Tool $141C
<<<
~SortList2 MAC
PxL ]1;]2
_SortList2 MAC
Tool $151C
<<<
~NewList2 MAC
PHL ]1
PxW ]2;]3;]4;]5
PHL ]6
_NewList2 MAC
Tool $161C
<<<

112
src/macro/LOAD.MACS.S Normal file
View File

@ -0,0 +1,112 @@
* Load Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_LoaderInitialization MAC
Tool $111
<<<
_LoaderStartUp MAC
Tool $211
<<<
_LoaderShutDown MAC
Tool $311
<<<
~LoaderVersion MAC
PHA
_LoaderVersion MAC
Tool $411
<<<
_LoaderReset MAC
Tool $511
<<<
~LoaderStatus MAC
PHA
_LoaderStatus MAC
Tool $611
<<<
~InitialLoad MAC
PHS 5
PHWL ]1;]2
PHW ]3
_InitialLoad MAC
Tool $911
<<<
~InitialLoad2 MAC
PHS 5
PHWL ]1;]2
PxW ]3;]4
_InitialLoad2 MAC
Tool $2011
<<<
~Restart MAC
PHS 5
PHW ]1
_Restart MAC
Tool $A11
<<<
~LoadSegNum MAC
PHS 2
PxW ]1;]2;]3
_LoadSegNum MAC
Tool $B11
<<<
~UnloadSegNum MAC
PxW ]1;]2;]3
_UnloadSegNum MAC
Tool $C11
<<<
~LoadSegName MAC
PHS 4
PHW ]1
PxL ]2;]3
_LoadSegName MAC
Tool $D11
<<<
~UnloadSeg MAC
PHS 3
PHL ]1
_UnloadSeg MAC
Tool $E11
<<<
~GetLoadSegInfo MAC
PxW ]1;]2;]3
PHL ]4
_GetLoadSegInfo MAC
Tool $F11
<<<
~GetUserID MAC
P1SL ]1
_GetUserID MAC
Tool $1011
<<<
~GetUserID2 MAC
P1SL ]1
_GetUserID2 MAC
Tool $2111
<<<
~LGetPathname MAC
PHS 2
PxW ]1;]2
_LGetPathname MAC
Tool $1111
<<<
~LGetPathname2 MAC
PHS 2
PxW ]1;]2
_LGetPathname2 MAC
Tool $2211
<<<
~UserShutdown MAC
PHA
PxW ]1;]2
_UserShutdown MAC
Tool $1211
<<<
~RenamePathname MAC
PxL ]1;]2
_RenamePathname MAC
Tool $1311
<<<

125
src/macro/LOCATOR.MACS.S Normal file
View File

@ -0,0 +1,125 @@
* Tool Locator macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_TLBootInit MAC
Tool $101
<<<
_TLStartUp MAC
Tool $201
<<<
_TLShutDown MAC
Tool $301
<<<
~TLVersion MAC
PHA
_TLVersion MAC
Tool $401
<<<
_TLReset MAC
Tool $501
<<<
~TLStatus MAC
PHA
_TLStatus MAC
Tool $601
<<<
~GetTSPtr MAC
PHS 2
PxW ]1;]2
_GetTSPtr MAC
Tool $901
<<<
~SetTSPtr MAC
PxW ]1;]2
PHL ]3
_SetTSPtr MAC
Tool $A01
<<<
~GetFuncPtr MAC
PHS 2
PxW ]1;]2
_GetFuncPtr MAC
Tool $B01
<<<
~GetWAP MAC
PHS 2
PxW ]1;]2
_GetWAP MAC
Tool $C01
<<<
~SetWAP MAC
PxW ]1;]2
PHL ]3
_SetWAP MAC
Tool $D01
<<<
~LoadTools MAC
PHL ]1
_LoadTools MAC
Tool $E01
<<<
~LoadOneTool MAC
PxW ]1;]2
_LoadOneTool MAC
Tool $F01
<<<
~UnloadOneTool MAC
PHW ]1
_UnloadOneTool MAC
Tool $1001
<<<
~TLMountVolume MAC
PHA
PxW ]1;]2
PxL ]3;]4;]5;]6
_TLMountVolume MAC
Tool $1101
<<<
~TLTextMountVol MAC
PHA
PxL ]1;]2;]3;]4
_TLTextMountVol MAC
Tool $1201
<<<
~SaveTextState MAC
PHS 2
_SaveTextState MAC
Tool $1301
<<<
~RestoreTextState MAC
PHL ]1
_RestoreTextState MAC
Tool $1401
<<<
~MessageCenter MAC
PxW ]1;]2
PHL ]3
_MessageCenter MAC
Tool $1501
<<<
_SetDefaultTPT MAC
Tool $1601
<<<
~MessageByName MAC
PHS 2
PHWL ]1;]2
PxW ]3;]4
_MessageByName MAC
Tool $1701
<<<
~StartupTools MAC
PHA
PxW ]1;]2
PxL ]3;]4
_StartupTools MAC
Tool $1801
<<<
~ShutdownTools MAC
PHWL ]1;]2
_ShutdownTools MAC
Tool $1901
<<<

570
src/macro/MACROS.S Normal file
View File

@ -0,0 +1,570 @@
*-------------------------
* Macro library
*-------------------------
INCD MAC ;Two byte INC
INC ]1
IF MX>1
BNE NC
INC ]1+1
NC FIN
<<<
DECD MAC ;Two byte DEC
IF MX>1
LDA ]1
BNE NC
DEC ]1+1
NC FIN
DEC ]1
<<<
MOV MAC
LDA ]1
STA ]2
<<<
MOVD MAC
MOV ]1;]2
IF MX>1 ;If A is short
IF (=]1 ;Syntax MOVD (ADR1),Y;????
INY
IF (=]2 ; MOVD (ADR1),Y;(ADR2),Y
MOV ]1;]2
ELSE ; MOVD (ADR1),Y;ADR2
MOV ]1;]2+1
FIN
ELSE
IF (=]2 ;Syntax MOVD ????;(ADR2),Y
INY
IF #=]1 ; MOVD #ADR1;(ADR2),Y
MOV ]1/$100;]2
ELSE ; MOVD ADR1;(ADR2),Y
MOV ]1+1;]2
FIN
ELSE ;Syntax MOVD ????;ADR2
IF #=]1 ; MOVD #ADR1;ADR2
MOV ]1/$100;]2+1
ELSE ; MOVD ADR1;ADR2
MOV ]1+1;]2+1
FIN
FIN
FIN
FIN
<<<
LDHI MAC ;For calls from other macs
IF #=]1
LDA ]1/$100
ELSE
LDA ]1+1
FIN
<<<
ADD MAC
IF #=]2
IF #=]1
ERR 1 ;Error if ADD #lab1;#lab2..
FIN
FIN
CLC
LDA ]1 ;Syntax ADD lab1;lab2;lab3
ADC ]2 ; or ADD #lab1;lab2;lab3 etc
DO ]0/3
STA ]3 ;If 3 parms
ELSE ;2 parm cases:
IF #=]2
STA ]1 ;Syntax ADD lab1;#lab2
ELSE ;Syntax ADD lab1;lab2
STA ]2 ; or ADD #lab1;lab2 -> lab2
FIN
FIN
IF MX>1 ;Following ignored if M long
LDA ]1+1
IF #=]2
ADC ]2/$100
ELSE
ADC ]2+1
FIN
DO ]0/3
STA ]3+1 ;If 3 parms
ELSE ;Two parm cases:
IF #=]2
STA ]1+1 ;Syntax ADD lab1;#lab2
ELSE ; -> lab1
STA ]2+1 ;Syntax ADD lab1;lab2 -> lab2
FIN ; or ADD #lab1;lab2 -> lab2
FIN
FIN
<<<
SUB MAC
IF #=]2
IF #=]1
ERR 1 ;Error if SUB #lab1;#lab2..
FIN
FIN
SEC
LDA ]1 ;Syntax SUB lab1;lab2;lab3
SBC ]2 ; or SUB #lab1;lab2;lab3 etc
DO ]0/3
STA ]3 ;If 3 parms
ELSE ;Two parm cases:
IF #=]2
STA ]1 ;Syntax SUB lab1;#lab2
ELSE ;Syntax SUB lab1;lab2
STA ]2 ; or SUB #lab1;lab2 -> lab2
FIN
FIN ;Of 2 parm cases
IF MX>1 ;Rest ignored if M long
LDHI ]1
IF #=]2
SBC ]2/$100 ;Case #lab2
ELSE
SBC ]2+1 ;Case lab2
FIN
DO ]0/3
STA ]3+1 ;If 3 parms
ELSE ;Two parm cases:
IF #=]2
STA ]1+1 ;Syntax SUB lab1;#lab2
ELSE ; -> lab1
STA ]2+1 ;Syntax SUB lab1;lab2 -> lab2
FIN ; or SUB #lab1;lab2 -> lab2
FIN ;Of 2 parm cases
FIN ;Of M short
<<<
ADDX MAC
TXA
ADDA MAC
CLC
ADC ]1
STA ]2
IF MX>1
LDHI ]1
ADC #0
STA ]2+1
FIN
<<<
ADDY MAC
TYA
ADDA ]1;]2
<<<
ADDNUM MAC
LDA #]1
CLC
ADC ]2
STA ]2
IF MX>1
BCC NC
INC ]2+1
NC FIN
<<<
SWAP MAC
LDA ]1
PHA
LDA ]2
STA ]1
PLA
STA ]2
<<<
COMPARE MAC
LDA ]1
CMP ]2
IF MX>1
LDHI ]1 ;Syntax COMPARE lab1;lab2
IF #=]2 ; or COMPARE lab1;#lab2
SBC ]2/$100
ELSE
SBC ]2+1
FIN
FIN
<<<
POKE MAC
MOV #]2;]1
<<<
STADR MAC
POKE ]2;]1
IF MX>1 ;If M is short, do high byte
POKE ]2+1;]1/$100
FIN
<<<
*=================================================
* Save and restore registers macros. Recommended
* for use at the start and end of subroutines
* which might be called from unknown status and
* which must set up register lengths.
*-------------------------------------------------
SAVSTAT MAC ;Save registers & status
PHA
PHY
PHX
PHP
<<<
RESTORE MAC ;Restore regs & status
PLP ;This must come first
PLX ; so register restores
PLY ; have correct length.
PLA
<<<
*=================================================
* Conditional branches not available on the 65816:
*-------------------------------------------------
BLE MAC ;Branch if less than or =
BEQ ]1
BLT ]1
<<<
BGT MAC ;Branch if greater than
BEQ OV
BGE ]1
OV <<<
*=================================================
* Conditional long branches. For use when out of
* range of a short branch and branching mechanism
* is wanted to be hidden on the listing.
*-------------------------------------------------
BRTL MAC ;BRL if less than (long)
BCCL MAC ;BRL if carry clear (long)
BCS OV
BRL ]1
OV <<<
BGEL MAC ;BRL if greater or equal (long)
BCSL MAC ;BRL if carry set (long)
BCC OV
BRL ]1
OV <<<
BPLL MAC ;BRL if plus (long)
BMI OV
BRL ]1
OV <<<
BMIL MAC ;BRL if minus (long)
BPL OV
BRL ]1
OV <<<
BEQL MAC ;BRL if equal (long)
BNE OV
BRL ]1
OV <<<
BNEL MAC ;BRL if not equal (long)
BEQ OV
BRL ]1
OV <<<
BVCL MAC ;BRL if V clear (long)
BVS OV
BRL ]1
OV <<<
BVSL MAC ;BRL if V set (long)
BVC OV
BRL ]1
OV <<<
BLEL MAC ;BRL if less or equal (long)
BEQ BR
BGE OV
BR BRL ]1
OV <<<
BLTL MAC ;BRL if less than (long)
BGE OV
BRL ]1
OV <<<
BGTL MAC ;BRL if greater than (long)
BEQ OV
BLT OV
BR BRL ]1
OV <<<
*=================================================
* The I/O macros below expect the COUT routine
* to be included or linked in as an external.
* PRINT expects the same of the SENDMSG routine.
*
* (Just declare COUT and SENDMSG as externals
* and include the linker command LIB 5 in the
* linker command file. SENDMSG also requires an
* OUTPUT routine in your source declared as an
* entry. It can be as simple as:
*
* OUTPUT JMP COUT
*
* SENDMSG and COUT are in the LIB directory and
* their source files are in the SOURCE directory.
*-------------------------------------------------
PRINT MAC ;Syntax PRINT "message"
JSR SENDMSG ; or PRINT 8D8D or
ASC ]1 ; PRINT 8D8D"text"8D"more"
BRK ; etc.
<<<
OUT MAC
LDA ]1 ;Syntax OUT #"A"
JSR COUT ; or OUT ADDRESS
<<< ; or OUT (PNT),Y etc.
HOME MAC ;Clear 80 col screen
OUT #"L"&$9F
<<<
NORMAL MAC ;Set normal text
OUT #"N"&$9F
<<<
INVERSE MAC ;Set inverse text
OUT #"O"&$9F
<<<
MOUSEON MAC ;Turn mousetext on
OUT #"["&$9F
INVERSE
<<<
MOUSEOFF MAC ;Turn mousetext off
OUT #"X"&$9F
NORMAL
<<<
BELL MAC ;Ring bell
OUT #"G"&$9F
<<<
CLEOL MAC ;Clear to end of line
OUT #$9D
<<<
CLEOP MAC ;Clear to end of screen
OUT #$8B
<<<
OUTCR MAC ;Do carriage return
OUT #$8D
<<<
GOTOXY MAC ;Pascal output only!
OUT #$1E
LDA ]1 ;X coor (imm or location)
CLC
ADC #' '
JSR COUT
LDA ]2 ;Y coor (")
CLC
ADC #' '
JSR COUT
<<<
CURSXY MAC ;GOTOXY for BASIC output
OUT #"Y"&$9F ;Home cursor
LDX ]2 ;Syntax (both versions):
BEQ H ; CURSXY #55;#10 or
CR OUTCR ; CURSXY XLOC,YLOC etc.
DEX
BNE CR
H IF MX<2 ;If M is long then
SEP %00100000 ; must shorten it
LDA ]1
STAL $24
REP %00100000 ; and lengthen on exit.
ELSE ;If M is short then
LDA ]1 ; leave as is
STAL $24
FIN
<<<
**************************************************
* APW-Equivalent Macros 1/20/89 *
* For use with APW or ORCA/M source listings. *
* *
**************************************************
*================================================
DP MAC
ADRL ]1
<<<
ASL4 MAC
LDA ]1+2
DO ]0/2 ;If 2 parms then set
LDX ]2 ; X to 2nd parm.
FIN
]A ASL ;Otherwise use X to
ASL ]1 ; decide how many
ADC #0 ; ASL's to do.
DEX
BNE ]A
STA ]1+2
<<<
LSR4 MAC
DO ]0/2 ;If 2 parms, then COMPLEMENT
LDA ]2 ; of X must be 2nd parm.
EOR $FFFF
CLC
ADC #1
TAX
FIN
LDA ]1
]A LSR
LSR ]1+2
BCC ]B
ORA #$8000
]B INX
BNE ]A
STA ]1
<<<
DEC4 MAC
IF MX/2-1 ; IF M IS SHORT
ERR 1 ; ERR IF NOT 16-BIT MODE
ELSE
DEC ]1
BPL ]A
DEC ]1+2
]A FIN
<<<
INC4 MAC
IF MX/2-1 ; IF M IS SHORT
ERR 1 ; ERR IF NOT 16-BIT MODE
ELSE
INC ]1
BNE ]A
INC ]1+2
]A FIN
<<<
ADD4 MAC
CLC ;If 3 parms then use
DO ]0/3 ; raw 4 byte addresses.
IF #=]1
LDA #<]1
ELSE ;Make sure we use the
LDA ]1 ; right LDA for data
FIN ; or addresses.
IF #=]2
ADC #<]2
ELSE ;Make sure we use the
ADC ]2 ; right ADC for data
FIN ; or addresses.
STA ]3
IF #=]1
LDA #^]1
ELSE ;Make sure we use the
LDA ]1+2 ; right LDA for data
FIN ; or addresses.
IF #=]2
ADC #^]2
ELSE ;Make sure we use the
ADC ]2+2 ; right ADC for data
FIN ; or addresses.
STA ]3+2
ELSE ;If 2 parms then use
; 2 byte Accumulator.
IF #=]1
ADC #<]1
ELSE ;Make sure we use the
ADC ]1 ; right ADC for data
FIN ; or addresses.
STA ]2
IF #=]1
LDA #^]1
ELSE ;Make sure we use the
LDA ]1+2 ; right LDA for data
FIN ; or addresses.
ADC #0
STA ]2+2
FIN
<<<
SUB4 MAC
SEC ;If 3 parms then use
DO ]0/3 ; raw 4 byte addresses.
IF #=]1
LDA #<]1
ELSE ;Make sure we use the
LDA ]1 ; right LDA for data
FIN ; or addresses.
IF #=]2
SBC #<]2
ELSE ;Make sure we use the
SBC ]2 ; right SBC for data
FIN ; or addresses.
STA ]3
IF #=]1
LDA #^]1
ELSE ;Make sure we use the
LDA ]1+2 ; right LDA for data
FIN ; or addresses.
IF #=]2
SBC #^]2
ELSE ;Make sure we use the
SBC ]2+2 ; right SBC for data
FIN ; or addresses.
STA ]3+2
ELSE
IF #=]1
SBC #<]1
ELSE ;Make sure we use the
SBC ]1 ; right SBC for data
FIN ; or addresses.
STA ]2
IF #=]1
LDA #^]1
ELSE ;Make sure we use the
LDA ]1+2 ; right LDA for data
FIN ; or addresses.
SBC #0
STA ]2+2
FIN
<<<

175
src/macro/MEM.MACS.S Normal file
View File

@ -0,0 +1,175 @@
* Memory Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_MMBootInit MAC
Tool $102
<<<
~MMStartUp MAC
PHA
_MMStartUp MAC
Tool $202
<<<
~MMShutDown MAC
PHW ]1
_MMShutDown MAC
Tool $302
<<<
~MMVersion MAC
PHA
_MMVersion MAC
Tool $402
<<<
_MMReset MAC
Tool $502
<<<
~MMStatus MAC
PHA
_MMStatus MAC
Tool $602
<<<
~NewHandle MAC
P2SL ]1
PxW ]2;]3
PHL ]4
_NewHandle MAC
Tool $902
<<<
~ReallocHandle MAC
PHLW ]1;]2
PHWL ]3;]4
PHL ]5
_ReallocHandle MAC
Tool $A02
<<<
~RestoreHandle MAC
PHL ]1
_RestoreHandle MAC
Tool $B02
<<<
~AddToOOMQueue MAC
PHL ]1
_AddToOOMQueue MAC
Tool $C02
<<<
~DeleteFromOOMQueue MAC
PHL ]1
_DeleteFromOOMQueue MAC
Tool $D02
<<<
~DisposeHandle MAC
PHL ]1
_DisposeHandle MAC
Tool $1002
<<<
~DisposeAll MAC
PHW ]1
_DisposeAll MAC
Tool $1102
<<<
~PurgeHandle MAC
PHL ]1
_PurgeHandle MAC
Tool $1202
<<<
~PurgeAll MAC
PHW ]1
_PurgeAll MAC
Tool $1302
<<<
~GetHandleSize MAC
P2SL ]1
_GetHandleSize MAC
Tool $1802
<<<
~SetHandleSize MAC
PxL ]1;]2
_SetHandleSize MAC
Tool $1902
<<<
~FindHandle MAC
P2SL ]1
_FindHandle MAC
Tool $1A02
<<<
~FreeMem MAC
PHS 2
_FreeMem MAC
Tool $1B02
<<<
~MaxBlock MAC
PHS 2
_MaxBlock MAC
Tool $1C02
<<<
~TotalMem MAC
PHS 2
_TotalMem MAC
Tool $1D02
<<<
~CheckHandle MAC
PHL ]1
_CheckHandle MAC
Tool $1E02
<<<
_CompactMem MAC
Tool $1F02
<<<
~HLock MAC
PHL ]1
_HLock MAC
Tool $2002
<<<
~HLockAll MAC
PHW ]1
_HLockAll MAC
Tool $2102
<<<
~HUnlock MAC
PHL ]1
_HUnlock MAC
Tool $2202
<<<
~HUnlockAll MAC
PHW ]1
_HUnlockAll MAC
Tool $2302
<<<
~SetPurge MAC
PHWL ]1;]2
_SetPurge MAC
Tool $2402
<<<
~SetPurgeAll MAC
PxW ]1;]2
_SetPurgeAll MAC
Tool $2502
<<<
~PtrToHand MAC
PxL ]1;]2;]3
_PtrToHand MAC
Tool $2802
<<<
~HandToPtr MAC
PxL ]1;]2;]3
_HandToPtr MAC
Tool $2902
<<<
~HandToHand MAC
PxL ]1;]2;3
_HandToHand MAC
Tool $2A02
<<<
~BlockMove MAC
PxL ]1;]2;]3
_BlockMove MAC
Tool $2B02
<<<
~RealFreeMem MAC
PHS 2
_RealFreeMem MAC
Tool $2F02
<<<

344
src/macro/MENU.MACS.S Normal file
View File

@ -0,0 +1,344 @@
* Menu Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_MenuBootInit MAC
Tool $10F
<<<
~MenuStartUp MAC
PxW ]1;]2
_MenuStartUp MAC
Tool $20F
<<<
_MenuShutDown MAC
Tool $30F
<<<
~MenuVersion MAC
PHA
_MenuVersion MAC
Tool $40F
<<<
_MenuReset MAC
Tool $50F
<<<
~MenuStatus MAC
PHA
_MenuStatus MAC
Tool $60F
<<<
~MenuKey MAC
PxL ]1;]2
_MenuKey MAC
Tool $90F
<<<
~GetMenuBar MAC
PHS 2
_GetMenuBar MAC
Tool $A0F
<<<
~MenuRefresh MAC
PHL ]1
_MenuRefresh MAC
Tool $B0F
<<<
_FlashMenuBar MAC
Tool $C0F
<<<
~InsertMenu MAC
PHLW ]1;]2
_InsertMenu MAC
Tool $D0F
<<<
~DeleteMenu MAC
PHW ]1
_DeleteMenu MAC
Tool $E0F
<<<
~InsertMItem MAC
PHL ]1
PxW ]2;]3
_InsertMItem MAC
Tool $F0F
<<<
~DeleteMItem MAC
PHW ]1
_DeleteMItem MAC
Tool $100F
<<<
~GetSysBar MAC
PHS 2
_GetSysBar MAC
Tool $110F
<<<
~SetSysBar MAC
PHL ]1
_SetSysBar MAC
Tool $120F
<<<
~FixMenuBar MAC
PHA
_FixMenuBar MAC
Tool $130F
<<<
~CountMItems MAC
P1SW ]1
_CountMItems MAC
Tool $140F
<<<
~NewMenuBar MAC
P2SL ]1
_NewMenuBar MAC
Tool $150F
<<<
~GetMHandle MAC
P2SW ]1
_GetMHandle MAC
Tool $160F
<<<
~SetBarColors MAC
PxW ]1;]2;]3
_SetBarColors MAC
Tool $170F
<<<
~GetBarColors MAC
PHS 2
_GetBarColors MAC
Tool $180F
<<<
~SetMTitleStart MAC
PHW ]1
_SetMTitleStart MAC
Tool $190F
<<<
~GetMTitleStart MAC
PHA
_GetMTitleStart MAC
Tool $1A0F
<<<
~GetMenuMgrPort MAC
PHS 2
_GetMenuMgrPort MAC
Tool $1B0F
<<<
~CalcMenuSize MAC
PxW ]1;]2;]3
_CalcMenuSize MAC
Tool $1C0F
<<<
~SetMTitleWidth MAC
PxW ]1;]2
_SetMTitleWidth MAC
Tool $1D0F
<<<
~GetMTitleWidth MAC
P1SW ]1
_GetMTitleWidth MAC
Tool $1E0F
<<<
~SetMenuFlag MAC
PxW ]1;]2
_SetMenuFlag MAC
Tool $1F0F
<<<
~GetMenuFlag MAC
P1SW ]1
_GetMenuFlag MAC
Tool $200F
<<<
~SetMenuTitle MAC
PHLW ]1;]2
_SetMenuTitle MAC
Tool $210F
<<<
~GetMenuTitle MAC
P2SW ]1
_GetMenuTitle MAC
Tool $220F
<<<
~MenuGlobal MAC
P1SW ]1
_MenuGlobal MAC
Tool $230F
<<<
~SetMItem MAC
PHLW ]1;]2
_SetMItem MAC
Tool $240F
<<<
~GetMItem MAC
PHLW ]1;]2
_GetMItem MAC
Tool $250F
<<<
~SetMItemFlag MAC
PxW ]1;]2
_SetMItemFlag MAC
Tool $260F
<<<
~GetMItemFlag MAC
P1SW ]1
_GetMItemFlag MAC
Tool $270F
<<<
~SetMItemBlink MAC
PHW ]1
_SetMItemBlink MAC
Tool $280F
<<<
_MenuNewRes MAC
Tool $290F
<<<
_DrawMenuBar MAC
Tool $2A0F
<<<
~MenuSelect MAC
PxL ]1;]2
_MenuSelect MAC
Tool $2B0F
<<<
~HiliteMenu MAC
PxW ]1;]2
_HiliteMenu MAC
Tool $2C0F
<<<
~NewMenu MAC
P2SL ]1
_NewMenu MAC
Tool $2D0F
<<<
~DisposeMenu MAC
PHL ]1
_DisposeMenu MAC
Tool $2E0F
<<<
_InitPalette MAC
Tool $2F0F
<<<
~EnableMItem MAC
PHW ]1
_EnableMItem MAC
Tool $300F
<<<
~DisableMItem MAC
PHW ]1
_DisableMItem MAC
Tool $310F
<<<
~CheckMItem MAC
PxW ]1;]2
_CheckMItem MAC
Tool $320F
<<<
~SetMItemMark MAC
PxW ]1;]2
_SetMItemMark MAC
Tool $330F
<<<
~GetMItemMark MAC
P1SW ]1
_GetMItemMark MAC
Tool $340F
<<<
~SetMItemStyle MAC
PxW ]1;]2
_SetMItemStyle MAC
Tool $350F
<<<
~GetMItemStyle MAC
P1SW ]1
_GetMItemStyle MAC
Tool $360F
<<<
~SetMenuID MAC
PxW ]1;]2
_SetMenuID MAC
Tool $370F
<<<
~SetMItemID MAC
PxW ]1;]2
_SetMItemID MAC
Tool $380F
<<<
~SetMenuBar MAC
PHL ]1
_SetMenuBar MAC
Tool $390F
<<<
~SetMItemName MAC
PHLW ]1;]2
_SetMItemName MAC
Tool $3A0F
<<<
~GetPopUpDefProc MAC
PHS 2
_GetPopUpDefProc MAC
Tool $3B0F
<<<
~PopUpMenuSelect MAC
PHA
PxW ]1;]2;]3;]4
PHL ]5
_PopUpMenuSelect MAC
Tool $3C0F
<<<
~DrawPopUp MAC
PxW ]1;]2;]3;]4
PxW ]5;]6;]7
_DrawPopUp MAC
Tool $3D0F
<<<
~NewMenu2 MAC
P2SW ]1
PHL ]2
_NewMenu2 MAC
Tool $3E0F
<<<
~InsertMItem2 MAC
PHWL ]1;]2
PxW ]3;]4
_InsertMItem2 MAC
Tool $3F0F
<<<
~SetMenuTitle2 MAC
PHWL ]1;]2
PHW ]3
_SetMenuTitle2 MAC
Tool $400F
<<<
~SetMItem2 MAC
PHWL ]1;]2
PHW ]3
_SetMItem2 MAC
Tool $410F
<<<
~SetMItemName2 MAC
PHWL ]1;]2
PHW ]3
_SetMItemName2 MAC
Tool $420F
<<<
~NewMenuBar2 MAC
P2SW ]1
PxL ]2;]3
_NewMenuBar2 MAC
Tool $430F
<<<
_HideMenuBar MAC
Tool $450F
<<<
_ShowMenuBar MAC
Tool $460F
<<<
~qMenuStartUp MAC
PHW ]1
NextDP ]2;$100
Tool $20F
<<<
~qNewMenu MAC
~NewMenu ]1
PHW #0
_InsertMenu
<<<

78
src/macro/MIDI.MACS.S Normal file
View File

@ -0,0 +1,78 @@
* MIDI tool macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_MidiBootInit MAC
Tool $120
<<<
~MidiStartUp MAC
PxW ]1;]2
_MidiStartUp MAC
Tool $220
<<<
_MidiShutDown MAC
Tool $320
<<<
~MidiVersion MAC
PHA
_MidiVersion MAC
Tool $420
<<<
_MidiReset MAC
Tool $520
<<<
~MidiStatus MAC
PHA
_MidiStatus MAC
Tool $620
<<<
~MidiControl MAC
PHWL ]1;]2
_MidiControl MAC
Tool $920
<<<
~MidiDevice MAC
PHWL ]1;]2
_MidiDevice MAC
Tool $A20
<<<
~MidiClock MAC
PHWL ]1;]2
_MidiClock MAC
Tool $B20
<<<
~MidiInfo MAC
P2SW ]1
_MidiInfo MAC
Tool $C20
<<<
~MidiReadPacket MAC
P1SL ]1
PHW ]2
_MidiReadPacket MAC
Tool $D20
<<<
~MidiWritePacket MAC
P1SL ]1
_MidiWritePacket MAC
Tool $E20
<<<
_MidiRecordSeq MAC
Tool $F20
<<<
_MidiStopRecord MAC
Tool $1020
<<<
_MidiPlaySeq MAC
Tool $1120
<<<
_MidiStopPlay MAC
Tool $1220
<<<
_MidiConvert MAC
Tool $1320
<<<

250
src/macro/MISC.MACS.S Normal file
View File

@ -0,0 +1,250 @@
* Misc Tool macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_MTBootInit MAC
Tool $103
<<<
_MTStartUp MAC
Tool $203
<<<
_MTShutDown MAC
Tool $303
<<<
~MTVersion MAC
PHA
_MTVersion MAC
Tool $403
<<<
_MTReset MAC
Tool $503
<<<
~MTStatus MAC
PHA
_MTStatus MAC
Tool $603
<<<
~WriteBRam MAC
PHL ]1
_WriteBRam MAC
Tool $903
<<<
~ReadBRam MAC
PHL ]1
_ReadBRam MAC
Tool $A03
<<<
~WriteBParam MAC
PxW ]1;]2
_WriteBParam MAC
Tool $B03
<<<
~ReadBParam MAC
P1SW ]1
_ReadBParam MAC
Tool $C03
<<<
~ReadTimeHex MAC
PHS 4
_ReadTimeHex MAC
Tool $D03
<<<
~WriteTimeHex MAC
PxW ]1;]2;]3
_WriteTimeHex MAC
Tool $E03
<<<
~ReadAsciiTime MAC
PHL ]1
_ReadAsciiTime MAC
Tool $F03
<<<
~SetVector MAC
PHWL ]1;]2
_SetVector MAC
Tool $1003
<<<
~GetVector MAC
P2SW ]1
_GetVector MAC
Tool $1103
<<<
~SetHeartBeat MAC
PHL ]1
_SetHeartBeat MAC
Tool $1203
<<<
~DelHeartBeat MAC
PHL ]1
_DelHeartBeat MAC
Tool $1303
<<<
_ClrHeartBeat MAC
Tool $1403
<<<
~SysFailMgr MAC
PHWL ]1;]2
_SysFailMgr MAC
Tool $1503
<<<
~GetAddr MAC
P2SW ]1
_GetAddr MAC
Tool $1603
<<<
~ReadMouse MAC
PHS 3
_ReadMouse MAC
Tool $1703
<<<
~InitMouse MAC
PHW ]1
_InitMouse MAC
Tool $1803
<<<
~SetMouse MAC
PHW ]1
_SetMouse MAC
Tool $1903
<<<
_HomeMouse MAC
Tool $1A03
<<<
_ClearMouse MAC
Tool $1B03
<<<
~ClampMouse MAC
PxW ]1;]2;]3;]4
_ClampMouse MAC
Tool $1C03
<<<
~GetMouseClamp MAC
PHS 4
_GetMouseClamp MAC
Tool $1D03
<<<
~PosMouse MAC
PxW ]1;]2
_PosMouse MAC
Tool $1E03
<<<
~ServeMouse MAC
PHA
_ServeMouse MAC
Tool $1F03
<<<
~GetNewID MAC
P1SW ]1
_GetNewID MAC
Tool $2003
<<<
~DeleteID MAC
PHW ]1
_DeleteID MAC
Tool $2103
<<<
~StatusID MAC
PHW ]1
_StatusID MAC
Tool $2203
<<<
~IntSource MAC
PHW ]1
_IntSource MAC
Tool $2303
<<<
~FWEntry MAC
PHS 4
PxW ]1;]2;]3;]4
_FWEntry MAC
Tool $2403
<<<
~GetTick MAC
PHS 2
_GetTick MAC
Tool $2503
<<<
~PackBytes MAC
P1SL ]1
PxL ]2;]3
PHW ]4
_PackBytes MAC
Tool $2603
<<<
~UnPackBytes MAC
P1SL ]1
PHW ]2
PxL ]3;]4
_UnPackBytes MAC
Tool $2703
<<<
~Munger MAC
P1SL ]1
PxL ]2;]3
PHWL ]4;]5
PHWL ]6;]7
_Munger MAC
Tool $2803
<<<
~GetIRQEnable MAC
PHA
_GetIRQEnable MAC
Tool $2903
<<<
~SetAbsClamp MAC
PxW ]1;]2;]3;]4
_SetAbsClamp MAC
Tool $2A03
<<<
~GetAbsClamp MAC
PHS 4
_GetAbsClamp MAC
Tool $2B03
<<<
_SysBeep MAC
Tool $2C03
<<<
~AddToQueue MAC
PxL ]1;]2
_AddToQueue MAC
Tool $2E03
<<<
~DeleteFromQueue MAC
PxL ]1;]2
_DeleteFromQueue MAC
Tool $2F03
<<<
~SetInterruptState MAC
PHLW ]1;]2
_SetInterruptState MAC
Tool $3003
<<<
~GetInterruptState MAC
PHLW ]1;]2
_GetInterruptState MAC
Tool $3103
<<<
~GetIntStateRecSize MAC
PHA
_GetIntStateRecSize MAC
Tool $3203
<<<
~ReadMouse2 MAC
PHS 3
_ReadMouse2 MAC
Tool $3303
<<<
~GetCodeResConverter MAC
PHS 2
_GetCodeResConverter MAC
Tool $3403
<<<
_GetROMResource MAC ;private
Tool $3503
<<<
_ReleaseROMResource MAC ;private
Tool $3603
<<<

88
src/macro/NOTESEQ.MACS.S Normal file
View File

@ -0,0 +1,88 @@
* Note sequencer macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_SeqBootInit MAC
Tool $011A
<<<
~SeqStartUp MAC
PxW ]1;]2;]3;]4
_SeqStartUp MAC
Tool $021A
<<<
_SeqShutDown MAC
Tool $031A
<<<
~SeqVersion MAC
PHA
_SeqVersion MAC
Tool $041A
<<<
_SeqReset MAC
Tool $051A
<<<
~SeqStatus MAC
PHA
_SeqStatus MAC
Tool $061A
<<<
~SetIncr MAC
PHW ]1
_SetIncr MAC
Tool $091A
<<<
~ClearIncr MAC
PHA
_ClearIncr MAC
Tool $0A1A
<<<
~GetTimer MAC
PHA
_GetTimer MAC
Tool $0B1A
<<<
~GetLoc MAC
PHS 3
_GetLoc MAC
Tool $0C1A
<<<
_SeqAllNotesOff MAC
Tool $0D1A
<<<
~SetTrkInfo MAC
PxW ]1;]2;]3
_SetTrkInfo MAC
Tool $0E1A
<<<
~StartSeq MAC
PxL ]1;]2;]3
_StartSeq MAC
Tool $0F1A
<<<
_StepSeq MAC
Tool $101A
<<<
~StopSeq MAC
PHW ]1
_StopSeq MAC
Tool $111A
<<<
~SetInstTable MAC
PHL ]1
_SetInstTable MAC
Tool $121A
<<<
_StartInts MAC
Tool $131A
<<<
_StopInts MAC
Tool $141A
<<<
~StartSeqRel MAC
PxL ]1;]2;]3
_StartSeqRel MAC
Tool $151A
<<<

65
src/macro/NOTESYN.MACS.S Normal file
View File

@ -0,0 +1,65 @@
* Note synthesizer macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_NSBootInit MAC
Tool $119
<<<
~NSStartUp MAC
PHWL ]1;]2
_NSStartUp MAC
Tool $219
<<<
_NSShutDown MAC
Tool $319
<<<
~NSVersion MAC
PHA
_NSVersion MAC
Tool $419
<<<
_NSReset MAC
Tool $519
<<<
~NSStatus MAC
PHA
_NSStatus MAC
Tool $619
<<<
~AllocGen MAC
P1SW ]1
_AllocGen MAC
Tool $919
<<<
~DeallocGen MAC
PHW ]1
_DeallocGen MAC
Tool $A19
<<<
~NoteOn MAC
PxW ]1;]2;]3
PHL ]4
_NoteOn MAC
Tool $B19
<<<
~NoteOff MAC
PxW ]1;]2
_NoteOff MAC
Tool $C19
<<<
_AllNotesOff MAC
Tool $D19
<<<
~NSSetUpdateRate MAC
P1SW ]1
_NSSetUpdateRate MAC
Tool $E19
<<<
~NSSetUserUpdateRtn MAC
P2SL ]1
_NSSetUserUpdateRtn MAC
Tool $F19
<<<

190
src/macro/PRINT.MACS.S Normal file
View File

@ -0,0 +1,190 @@
* Print Mgr. macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_PMBootInit MAC
Tool $0113
<<<
~PMStartUp MAC
PxW ]1;]2
_PMStartUp MAC
Tool $0213
<<<
_PMShutDown MAC
Tool $0313
<<<
~PMVersion MAC
PHA
_PMVersion MAC
Tool $0413
<<<
_PMReset MAC
Tool $0513
<<<
~PMStatus MAC
PHA
_PMStatus MAC
Tool $0613
<<<
~PrDefault MAC
PHL ]1
_PrDefault MAC
Tool $0913
<<<
~PrValidate MAC
P1SL ]1
_PrValidate MAC
Tool $0A13
<<<
~PrStlDialog MAC
P1SL ]1
_PrStlDialog MAC
Tool $0B13
<<<
~PrJobDialog MAC
P1SL ]1
_PrJobDialog MAC
Tool $0C13
<<<
~PrPixelMap MAC
PxL ]1;]2
PHW ]3
_PrPixelMap MAC
Tool $0D13
<<<
~PrOpenDoc MAC
P2SL ]1
PHL ]2
_PrOpenDoc MAC
Tool $0E13
<<<
~PrCloseDoc MAC
PHL ]1
_PrCloseDoc MAC
Tool $0F13
<<<
~PrOpenPage MAC
PxL ]1;]2
_PrOpenPage MAC
Tool $1013
<<<
~PrClosePage MAC
PHL ]1
_PrClosePage MAC
Tool $1113
<<<
~PrPicFile MAC
PxL ]1;]2;]3
_PrPicFile MAC
Tool $1213
<<<
_PrControl MAC
Tool $1313
<<<
~PrError MAC
PHA
_PrError MAC
Tool $1413
<<<
~PrSetError MAC
PHW ]1
_PrSetError MAC
Tool $1513
<<<
~PrChoosePrinter MAC
PHA
_PrChoosePrinter MAC
Tool $1613
<<<
~PrGetPrinterSpecs MAC
PHS 2
_PrGetPrinterSpecs MAC
Tool $1813
<<<
_LLDStartUp MAC
Tool $1913
<<<
_LLDShutDown MAC
Tool $1A13
<<<
_LLDControl MAC
Tool $1B13
<<<
_LLDBitMap MAC
Tool $1C13
<<<
_LLDText MAC
Tool $1D13
<<<
~PrDriverVer MAC
PHA
_PrDriverVer MAC
Tool $2313
<<<
~PrPortVer MAC
PHA
_PrPortVer MAC
Tool $2413
<<<
~PrGetZoneName MAC
PHS 2
_PrGetZoneName MAC
Tool $2513
<<<
~PrGetPrinterDvrName MAC
PHS 2
_PrGetPrinterDvrName MAC
Tool $2813
<<<
~PrGetPortDvrName MAC
PHS 2
_PrGetPortDvrName MAC
Tool $2913
<<<
~PrGetUserName MAC
PHS 2
_PrGetUserName MAC
Tool $2A13
<<<
~PrGetNetworkName MAC
PHS 2
~PrGetNetworkName MAC
Tool $2B13
<<<
~PMUnloadDriver MAC
PHW ]1
_PMUnloadDriver MAC
Tool $3413
<<<
~PMLoadDriver MAC
PHW ]1
_PMLoadDriver MAC
Tool $3513
<<<
~PrGetDocName MAC
PHS 2
_PrGetDocName MAC
Tool $3613
<<<
~PrSetDocName MAC
PHL ]1
_PrSetDocName MAC
Tool $3713
<<<
~PrGetPgOrientation MAC
P1SL ]1
_PrGetPgOrientation MAC
Tool $3813
<<<
~qPMStartUp MAC
PHW ]1
CLC
LDA ]2
ADC ]NextDP
PHA
Tool $0213
<<<

1092
src/macro/QD.MACS.S Normal file

File diff suppressed because it is too large Load Diff

64
src/macro/QDAUX.MACS.S Normal file
View File

@ -0,0 +1,64 @@
* QuickDraw Aux macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_QDAuxBootInit MAC
Tool $112
<<<
_QDAuxStartUp MAC
Tool $212
<<<
_QDAuxShutDown MAC
Tool $312
<<<
~QDAuxVersion MAC
PHA
_QDAuxVersion MAC
Tool $412
<<<
_QDAuxReset MAC
Tool $512
<<<
~QDAuxStatus MAC
PHA
_QDAuxStatus MAC
Tool $612
<<<
~CopyPixels MAC
PxL ]1;]2;]3;]4
PHWL ]5;]6
_CopyPixels MAC
Tool $912
<<<
_WaitCursor MAC
Tool $A12
<<<
~DrawIcon MAC
PHLW ]1;]2
PxW ]3;]4
_DrawIcon MAC
Tool $B12
<<<
~SpecialRect MAC
PHL ]1
PxW ]2;]3
_SpecialRect MAC
Tool $C12
<<<
~SeedFill MAC
PxL ]1;]2;]3;]4
PxW ]5;]6;]7
PxL ]8;]9
_SeedFill MAC
Tool $D12
<<<
~CalcMask MAC
PxL ]1;]2;]3;]4
PHW ]5
PxL ]6;]7
_CalcMask MAC
Tool $E12
<<<

207
src/macro/RESOURCE.MACS.S Normal file
View File

@ -0,0 +1,207 @@
* Resource macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_ResourceBootInit MAC
Tool $11E
<<<
~ResourceStartUp MAC
PHW ]1
_ResourceStartUp MAC
Tool $21E
<<<
_ResourceShutDown MAC
Tool $31E
<<<
~ResourceVersion MAC
PHA
_ResourceVersion MAC
Tool $41E
<<<
_ResourceReset MAC
Tool $51E
<<<
~ResourceStatus MAC
PHA
_ResourceStatus MAC
Tool $61E
<<<
~CreateResourceFile MAC
PHLW ]1;]2
PHWL ]3;]4
_CreateResourceFile MAC
Tool $91E
<<<
~OpenResourceFile MAC
P1SW ]1
PxL ]2;]3
_OpenResourceFile MAC
Tool $A1E
<<<
~CloseResourceFile MAC
PHW ]1
_CloseResourceFile MAC
Tool $B1E
<<<
~AddResource MAC
PHLW ]1;]2
PHWL ]3;]4
_AddResource MAC
Tool $C1E
<<<
~UpdateResourceFile MAC
PHW ]1
_UpdateResourceFile MAC
Tool $D1E
<<<
~LoadResource MAC
P2SW ]1
PHL ]2
_LoadResource MAC
Tool $E1E
<<<
~RemoveResource MAC
PHWL ]1;]2
_RemoveResource MAC
Tool $F1E
<<<
~MarkResourceChange MAC
PxW ]1;]2
PHL ]3
_MarkResourceChange MAC
Tool $101E
<<<
~SetCurResourceFile MAC
PHW ]1
_SetCurResourceFile MAC
Tool $111E
<<<
~GetCurResourceFile MAC
PHA
_GetCurResourceFile MAC
Tool $121E
<<<
~SetCurResourceApp MAC
PHW ]1
_SetCurResourceApp MAC
Tool $131E
<<<
~GetCurResourceApp MAC
PHA
_GetCurResourceApp MAC
Tool $141E
<<<
~HomeResourceFile MAC
P1SW ]1
PHL ]2
_HomeResourceFile MAC
Tool $151E
<<<
~WriteResource MAC
PHWL ]1;]2
_WriteResource MAC
Tool $161E
<<<
~ReleaseResource MAC
PxW ]1;]2
PHL ]3
_ReleaseResource MAC
Tool $171E
<<<
~DetatchResource MAC
PHWL ]1;]2
_DetatchResource MAC
Tool $181E
<<<
~UniqueResourceID MAC
P2SW ]1
PHW ]2
_UniqueResourceID MAC
Tool $191E
<<<
~SetResourceID MAC
PHLW ]1;]2
PHL ]3
_SetResourceID MAC
Tool $1A1E
<<<
~GetResourceAttr MAC
P1SW ]1
PHL ]2
_GetResourceAttr MAC
Tool $1B1E
<<<
~SetResourceAttr MAC
PxW ]1;]2
PHL ]3
_SetResourceAttr MAC
Tool $1C1E
<<<
~GetResourceSize MAC
P2SW ]1
PHL ]2
_GetResourceSize MAC
Tool $1D1E
<<<
~MatchResourceHandle MAC
PxL ]1;]2
_MatchResourceHandle MAC
Tool $1E1E
<<<
~GetOpenFileRefNum MAC
P1SW ]1
_GetOpenFileRefNum MAC
Tool $1F1E
<<<
~CountTypes MAC
PHA
_CountTypes MAC
Tool $201E
<<<
~GetIndType MAC
P1SW ]1
_GetIndType MAC
Tool $211E
<<<
~CountResources MAC
P2SW ]1
_CountResources MAC
Tool $221E
<<<
~GetIndResource MAC
P2SW ]1
PHL ]2
_GetIndResource MAC
Tool $231E
<<<
~SetResourceLoad MAC
P1SW ]1
_SetResourceLoad MAC
Tool $241E
<<<
~SetResourceFileDepth MAC
P1SW ]1
_SetResourceFileDepth MAC
Tool $251E
<<<
~GetMapHandle MAC
P2SW ]1
_GetMapHandle MAC
Tool $261E
<<<
~LoadAbsResource MAC
P2SL ]1
PHL ]2
PHWL ]3;]4
_LoadAbsResource MAC
Tool $271E
<<<
~ResourceConverter MAC
PHL ]1
PxW ]2;]3
_ResourceConverter MAC
Tool $281E
<<<

603
src/macro/SANE.MACS.S Normal file
View File

@ -0,0 +1,603 @@
* Sane Toolset macros.
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_SANEBootInit MAC
Tool $10A
<<<
~SANEStartUp MAC
PHW ]1
_SANEStartUp MAC
Tool $20A
<<<
_SANEShutDown MAC
Tool $30A
<<<
~SANEVersion MAC
PHA
_SANEVersion MAC
Tool $40A
<<<
_SANEReset MAC
Tool $50A
<<<
~SANEStatus MAC
PHA
_SANEStatus MAC
Tool $60A
<<<
_SANEFP816 MAC
Tool $90A
<<<
_SANEDecStr816 MAC
Tool $A0A
<<<
_SANEElems816 MAC
Tool $B0A
<<<
~qSANEStartUp MAC
NextDP ]1;$100
Tool $20A
<<<
* Auxiliary macros
FOPRF MAC ;call FP
PEA ]1
_SANEFP816
<<<
FOPRD MAC ;call DecStr
PEA ]1
_SANEDecStr816
<<<
FOPRE MAC ;call Elems
PEA ]1
_SANEElems816
<<<
* Addition
FADDX MAC
FOPRF 0
<<<
FADDD MAC
FOPRF $100
<<<
FADDS MAC
FOPRF $200
<<<
FADDC MAC
FOPRF $500
<<<
FADDI MAC
FOPRF $400
<<<
FADDL MAC
FOPRF $300
<<<
* Subtraction
FSUBX MAC
FOPRF $002
<<<
FSUBD MAC
FOPRF $102
<<<
FSUBS MAC
FOPRF $202
<<<
FSUBC MAC
FOPRF $502
<<<
FSUBI MAC
FOPRF $402
<<<
FSUBL MAC
FOPRF $302
<<<
* Multiplication
FMULX MAC
FOPRF $004
<<<
FMULD MAC
FOPRF $104
<<<
FMULS MAC
FOPRF $204
<<<
FMULC MAC
FOPRF $504
<<<
FMULI MAC
FOPRF $404
<<<
FMULL MAC
FOPRF $304
<<<
* Division
FDIVX MAC
FOPRF $006
<<<
FDIVD MAC
FOPRF $106
<<<
FDIVS MAC
FOPRF $206
<<<
FDIVC MAC
FOPRF $506
<<<
FDIVI MAC
FOPRF $406
<<<
FDIVL MAC
FOPRF $306
<<<
* Square root
FSQRTX MAC
FOPRF $12
<<<
* Round to integer, according to the current rounding mode
FRINTX MAC
FOPRF $14
<<<
* Truncate to integer, using round toward zero.
FTINTX MAC
FOPRF $16
<<<
* Remainder
FREMX MAC
FOPRF $00C
<<<
FREMD MAC
FOPRF $10C
<<<
FREMS MAC
FOPRF $20C
<<<
FREMC MAC
FOPRF $50C
<<<
FREMI MAC
FOPRF $40C
<<<
FREML MAC
FOPRF $30C
<<<
* Logb
FLOGBX MAC
FOPRF $1A
<<<
* Scalb
FSCALBX MAC
FOPRF $18
<<<
* Copy-sign
FCPYSGNX MAC
FOPRF $011
<<<
FCPYSGND MAC
FOPRF $111
<<<
FCPYSGNS MAC
FOPRF $211
<<<
FCPYSGNC MAC
FOPRF $511
<<<
FCPYSGNI MAC
FOPRF $411
<<<
FCPYSGNL MAC
FOPRF $311
<<<
* Negate
FNEGX MAC
FOPRF $0D
<<<
* Absolute value
FABSX MAC
FOPRF $0F
<<<
* Next-after. NOTE: both operands are of the
* the same format, as specified by the usual suffix.
FNEXTS MAC
FOPRF $21E
<<<
FNEXTD MAC
FOPRF $11E
<<<
FNEXTX MAC
FOPRF $01E
<<<
* Conversion to extended
FX2X MAC
FOPRF $00E
<<<
FD2X MAC
FOPRF $10E
<<<
FS2X MAC
FOPRF $20E
<<<
* 16-bit integer, by address
FI2X MAC
FOPRF $40E
<<<
* 32-bit integer, by address
FL2X MAC
FOPRF $30E
<<<
FC2X MAC
FOPRF $50E
<<<
* Conversion from extended
FX2D MAC
FOPRF $110
<<<
FX2S MAC
FOPRF $210
<<<
FX2I MAC
FOPRF $410
<<<
FX2L MAC
FOPRF $310
<<<
FX2C MAC
FOPRF $510
<<<
* Binary to decimal conversion
FX2DEC MAC
FOPRF $00B
<<<
FD2DEC MAC
FOPRF $10B
<<<
FS2DEC MAC
FOPRF $20B
<<<
FC2DEC MAC
FOPRF $50B
<<<
FI2DEC MAC
FOPRF $40B
<<<
FL2DEC MAC
FOPRF $30B
<<<
* Decimal to binary conversion
FDEC2X MAC
FOPRF $009
<<<
FDEC2D MAC
FOPRF $109
<<<
FDEC2S MAC
FOPRF $209
<<<
FDEC2C MAC
FOPRF $509
<<<
FDEC2I MAC
FOPRF $409
<<<
FDEC2L MAC
FOPRF $309
<<<
* Compare, not signaling invalid on unordered
FCMPX MAC
FOPRF $008
<<<
FCMPD MAC
FOPRF $108
<<<
FCMPS MAC
FOPRF $208
<<<
FCMPC MAC
FOPRF $508
<<<
FCMPI MAC
FOPRF $408
<<<
FCMPL MAC
FOPRF $308
<<<
* Compare, signaling invalid on unordered
FCPXX MAC
FOPRF $00A
<<<
FCPXD MAC
FOPRF $10A
<<<
FCPXS MAC
FOPRF $20A
<<<
FCPXC MAC
FOPRF $50A
<<<
FCPXI MAC
FOPRF $40A
<<<
FCPXL MAC
FOPRF $30A
<<<
* The following macros define a set of so-called floating
* branches. They presume that the appropriate compare
* operation, macro FCMPz or FCPXz, precedes.
FBEQ MAC
BEQ ]1
<<<
FBLT MAC ;less
BMI ]1
<<<
FBLE MAC ;less or equal
BMI ]1
BEQ ]1
<<<
FBGT MAC ;greater
BVS ]1
<<<
FBGE MAC ;greater or equal
BVS ]1
BEQ ]1
<<<
FBULT MAC ;less or unordered
BMI ]1
BVS *+4
BNE ]1
<<<
FBULE MAC ;unordered, less, or equal
BMI ]1
BEQ ]1
BVC ]1
<<<
FBUGT MAC ;unordered or greater
BVS ]1
BMI *+4
BNE ]1
<<<
FBUGE MAC ;unordered, greater, or equal
BVS ]1
BEQ ]1
BPL ]1
<<<
FBU MAC ;unordered
BVS *+6
BMI *+4
BNE ]1
<<<
FBO MAC ;ordered
BMI ]1
BVS ]1
BEQ ]1
<<<
FBNE MAC ;not equal
BMI ]1
BVS ]1
BNE ]1
<<<
FBUE MAC ;unordered, equal
BEQ ]1
BMI *+4
BVC ]1
<<<
FBLG MAC ;less or greater
BMI ]1
BVS ]1
<<<
FCLASSS MAC
FOPRF $21C
<<<
FCLASSD MAC
FOPRF $11C
<<<
FCLASSX MAC
FOPRF $01C
<<<
FCLASSC MAC
FOPRF $51C
<<<
FCLASSI MAC
FOPRF $41C
<<<
FCLASSL MAC
FOPRF $31C
<<<
* The following macros provide branches based on the
* the result of a FCLASSz macro.
FBSNAN MAC ;signaling NaN
TXA
ASL
CMP #2*$FC
BEQ ]1
<<<
FBQNAN MAC ;quiet NaN
TXA
ASL
CMP #2*$FD
BEQ ]1
<<<
FBINF MAC ;infinite
TXA
ASL
CMP #2*$FE
BEQ ]1
<<<
FBZERO MAC ;zero
TXA
ASL
CMP #2*$FF
BEQ ]1
<<<
FBNORM MAC ;normal
TXA
ASL
BEQ ]1
<<<
FBDENORM MAC ;denormal
TXA
ASL
CMP #2*1
BEQ ]1
<<<
FBNZENUM MAC ;non-zero num (norm or denorm)
TXA
XBA
ASL
BCC ]1
<<<
FBNUM MAC ;number (zero, norm or denorm)
TXA
INC A
XBA
ASL
BCC ]1
<<<
FBMINUS MAC ;minus sign
BMI ]1
<<<
FBPLUS MAC ;plus sign
BPL ]1
<<<
* Get and set environment
FGETENV MAC
FOPRF $03
<<<
FSETENV MAC
FOPRF $01
<<<
* Test and set exception
FTESTXCP MAC
FOPRF $1B
<<<
FSETXCP MAC
FOPRF $15
<<<
* Procedure entry and exit
FPROCENTRY MAC
FOPRF $17
<<<
FPROCEXIT MAC
FOPRF $19
<<<
* Get and set halt vector
FGETHV MAC
FOPRF $07
<<<
FSETHV MAC
FOPRF $05
<<<
* Elementary function macros
FLNX MAC ;natural (base-e) log
FOPRE $00
<<<
FLOG2X MAC ;base-2 log
FOPRE $02
<<<
FLN1X MAC ;ln (1 + x)
FOPRE $04
<<<
FLOG21X MAC ;log2 (1 +x)
FOPRE $06
<<<
FEXPX MAC ;base-e exponential
FOPRE $08
<<<
FEXP2X MAC ;base-2 exponential
FOPRE $0A
<<<
FEXP1X MAC ;exp (x) - 1
FOPRE $0C
<<<
FEXP21X MAC ;exp2 (x) - 1
FOPRE $0E
<<<
FXPWRI MAC ;integer exponential
FOPRE $10
<<<
FXPWRY MAC ;general exponential
FOPRE $12
<<<
FCOMPOUND MAC ;compound
FOPRE $14
<<<
FANNUITY MAC ;annuity
FOPRE $16
<<<
FATANX MAC ;arctangent
FOPRE $18
<<<
FSINX MAC ;sine
FOPRE $1A
<<<
FCOSX MAC ;cosine
FOPRE $1C
<<<
FTANX MAC ;tangent
FOPRE $1E
<<<
FRANDX MAC ;random number generator
FOPRE $20
<<<
* Scanner and formatter function macros
FPSTR2DEC MAC ;pascal string to decimal record
FOPRD 0
<<<
FDEC2STR MAC ;decimal record to pascal string
FOPRD 1
<<<
FCSTR2DEC MAC ;C string to decimal record
FOPRD 2
<<<

37
src/macro/SCH.MACS.S Normal file
View File

@ -0,0 +1,37 @@
* Scheduler macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_SchBootInit MAC
Tool $107
<<<
_SchStartUp MAC
Tool $207
<<<
_SchShutDown MAC
Tool $307
<<<
~SchVersion MAC
PHA
_SchVersion MAC
Tool $407
<<<
_SchReset MAC
Tool $507
<<<
~SchStatus MAC
PHA
_SchStatus MAC
Tool $607
<<<
~SchAddTask MAC
P1SL ]1
_SchAddTask MAC
Tool $907
<<<
_SchFlush MAC
Tool $A07
<<<

79
src/macro/SCRAP.MACS.S Normal file
View File

@ -0,0 +1,79 @@
* Scrap manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_ScrapBootInit MAC
Tool $116
<<<
_ScrapStartUp MAC
Tool $216
<<<
_ScrapShutDown MAC
Tool $316
<<<
~ScrapVersion MAC
PHA
_ScrapVersion MAC
Tool $416
<<<
_ScrapReset MAC
Tool $516
<<<
~ScrapStatus MAC
PHA
_ScrapStatus MAC
Tool $616
<<<
_UnloadScrap MAC
Tool $916
<<<
_LoadScrap MAC
Tool $A16
<<<
_ZeroScrap MAC
Tool $B16
<<<
~PutScrap MAC
PHL ]1
PHWL ]2;]3
_PutScrap MAC
Tool $C16
<<<
~GetScrap MAC
PHLW ]1;]2
_GetScrap MAC
Tool $D16
<<<
~GetScrapHandle MAC
P2SW ]1
_GetScrapHandle MAC
Tool $E16
<<<
~GetScrapSize MAC
P2SW ]1
_GetScrapSize MAC
Tool $F16
<<<
~GetScrapPath MAC
PHS 2
_GetScrapPath MAC
Tool $1016
<<<
~SetScrapPath MAC
PHL ]1
_SetScrapPath MAC
Tool $1116
<<<
~GetScrapCount MAC
PHA
_GetScrapCount MAC
Tool $1216
<<<
~GetScrapState MAC
PHA
_GetScrapState MAC
Tool $1316
<<<

97
src/macro/SOUND.MACS.S Normal file
View File

@ -0,0 +1,97 @@
* Sound manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_SoundBootInit MAC
Tool $108
<<<
~SoundStartUp MAC
PHW ]1
_SoundStartUp MAC
Tool $208
<<<
_SoundShutDown MAC
Tool $308
<<<
~SoundVersion MAC
PHA
_SoundVersion MAC
Tool $408
<<<
_SoundReset MAC
Tool $508
<<<
~SoundToolStatus MAC
PHA
_SoundToolStatus MAC
Tool $608
<<<
~WriteRamBlock MAC
PHL ]1
PxW ]2;]3
_WriteRamBlock MAC
Tool $908
<<<
~ReadRamBlock MAC
PHL ]1
PxW ]2;]3
_ReadRamBlock MAC
Tool $A08
<<<
~GetTableAddress MAC
PHS 2
_GetTableAddress MAC
Tool $B08
<<<
~GetSoundVolume MAC
P1SW ]1
_GetSoundVolume MAC
Tool $C08
<<<
~SetSoundVolume MAC
PxW ]1;]2
_SetSoundVolume MAC
Tool $D08
<<<
~FFStartSound MAC
PHWL ]1;]2
_FFStartSound MAC
Tool $E08
<<<
~FFStopSound MAC
PHW ]1
_FFStopSound MAC
Tool $F08
<<<
~FFSoundStatus MAC
PHA
_FFSoundStatus MAC
Tool $1008
<<<
~FFGeneratorStatus MAC
P1SW ]1
_FFGeneratorStatus MAC
Tool $1108
<<<
~SetSoundMIRQV MAC
PHL ]1
_SetSoundMIRQV MAC
Tool $1208
<<<
~SetUserSoundIRQV MAC
P2SL ]1
_SetUserSoundIRQV MAC
Tool $1308
<<<
~FFSoundDoneStatus MAC
P1SW ]1
_FFSoundDoneStatus MAC
Tool $1408
<<<
~qSoundStartUp MAC
NextDP ]1;$100
Tool $208
<<<

107
src/macro/STD.MACS.S Normal file
View File

@ -0,0 +1,107 @@
* Standard File Operations macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_SFBootInit MAC
Tool $117
<<<
~SFStartUp MAC
PxW ]1;]2
_SFStartUp MAC
Tool $217
<<<
_SFShutDown MAC
Tool $317
<<<
~SFVersion MAC
PHA
_SFVersion MAC
Tool $417
<<<
_SFReset MAC
Tool $517
<<<
~SFStatus MAC
PHA
_SFStatus MAC
Tool $617
<<<
~SFGetFile MAC
PxW ]1;]2
PxL ]3;]4;]5;]6
_SFGetFile MAC
Tool $917
<<<
~SFPutFile MAC
PxW ]1;]2
PxL ]3;]4
PHWL ]5;]6
_SFPutFile MAC
Tool $A17
<<<
~SFPGetFile MAC
PxW ]1;]2
PxL ]3;]4;]5;]6
PxL ]7;]8
_SFPGetFile MAC
Tool $B17
<<<
~SFPPutFile MAC
PxW ]1;]2
PxL ]3;]4
PHWL ]5;]6
PxL ]7;]8
_SFPPutFile MAC
Tool $C17
<<<
~SFAllCaps MAC
PHW ]1
_SFAllCaps MAC
Tool $D17
<<<
~SFGetFile2 MAC
PxW ]1;]2;]3
PxL ]4;]5;]6;]7
_SFGetFile2 MAC
Tool $E17
<<<
~SFPutFile2 MAC
PxW ]1;]2;]3
PHLW ]4;]5
PxL ]6;]7
_SFPutFile2 MAC
Tool $F17
<<<
_SFPGetFile2 MAC
Tool $1017
<<<
_SFPPutFile2 MAC
Tool $1117
<<<
~SFShowInvisible MAC
P1SW ]1
_SFShowInvisible MAC
Tool $1217
<<<
~SFReScan MAC
PxL ]1;]2
_SFReScan MAC
Tool $1317
<<<
~SFMultiGet2 MAC
PxW ]1;]2;]3
PxL ]4;]5;]6;]7
_SFMultiGet2 MAC
Tool $1417
<<<
_SFPMultiGet2 MAC
Tool $1517
<<<
~qSFStartUp MAC
PHW ]1
NextDP ]2;$100
Tool $217
<<<

183
src/macro/TEXT.MACS.S Normal file
View File

@ -0,0 +1,183 @@
* Text tool macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_TextBootInit MAC
Tool $10C
<<<
_TextStartUp MAC
Tool $20C
<<<
_TextShutDown MAC
Tool $30C
<<<
~TextVersion MAC
PHA
_TextVersion MAC
Tool $40C
<<<
_TextReset MAC
Tool $50C
<<<
~TextStatus MAC
PHA
_TextStatus MAC
Tool $60C
<<<
~SetInGlobals MAC
PxW ]1;]2
_SetInGlobals MAC
Tool $90C
<<<
~SetOutGlobals MAC
PxW ]1;]2
_SetOutGlobals MAC
Tool $A0C
<<<
~SetErrGlobals MAC
PxW ]1;]2
_SetErrGlobals MAC
Tool $B0C
<<<
~GetInGlobals MAC
PHS 2
_GetInGlobals MAC
Tool $C0C
<<<
~GetOutGlobals MAC
PHS 2
_GetOutGlobals MAC
Tool $D0C
<<<
~GetErrGlobals MAC
PHS 2
_GetErrGlobals MAC
Tool $E0C
<<<
~SetInputDevice MAC
PHWL ]1;]2
_SetInputDevice MAC
Tool $F0C
<<<
~SetOutputDevice MAC
PHWL ]1;]2
_SetOutputDevice MAC
Tool $100C
<<<
~SetErrorDevice MAC
PHWL ]1;]2
_SetErrorDevice MAC
Tool $110C
<<<
~GetInputDevice MAC
PHS 3
_GetInputDevice MAC
Tool $120C
<<<
~GetOutputDevice MAC
PHS 3
_GetOutputDevice MAC
Tool $130C
<<<
~GetErrorDevice MAC
PHS 3
_GetErrorDevice MAC
Tool $140C
<<<
~InitTextDev MAC
PHW ]1
_InitTextDev MAC
Tool $150C
<<<
~CtlTextDev MAC
PxW ]1;]2
_CtlTextDev MAC
Tool $160C
<<<
~StatusTextDev MAC
PxW ]1;]2
_StatusTextDev MAC
Tool $170C
<<<
~WriteChar MAC
PHW ]1
_WriteChar MAC
Tool $180C
<<<
~ErrWriteChar MAC
PHW ]1
_ErrWriteChar MAC
Tool $190C
<<<
~WriteLine MAC
PHL ]1
_WriteLine MAC
Tool $1A0C
<<<
~ErrWriteLine MAC
PHL ]1
_ErrWriteLine MAC
Tool $1B0C
<<<
~WriteString MAC
PHL ]1
_WriteString MAC
Tool $1C0C
<<<
~ErrWriteString MAC
PHL ]1
_ErrWriteString MAC
Tool $1D0C
<<<
~TextWriteBlock MAC
PHL ]1
PxW ]2;]3
_TextWriteBlock MAC
Tool $1E0C
<<<
~ErrWriteBlock MAC
PHL ]1
PxW ]2;]3
_ErrWriteBlock MAC
Tool $1F0C
<<<
~WriteCString MAC
PHL ]1
_WriteCString MAC
Tool $200C
<<<
~ErrWriteCString MAC
PHL ]1
_ErrWriteCString MAC
Tool $210C
<<<
~ReadChar MAC
P1SW ]1
_ReadChar MAC
Tool $220C
<<<
~TextReadBlock MAC
PHL ]1
PxW ]2;]3;]4
_TextReadBlock MAC
Tool $230C
<<<
~ReadLine MAC
P1SL ]1
PxW ]2;]3;]4
_ReadLine MAC
Tool $240C
<<<
PrintLn MAC ; print a line of text
pea ^text
pea text
ldx #$1A0C
jsl $E10000
bra cont
text str ]1
cont
<<<

189
src/macro/TEXTEDIT.MACS.S Normal file
View File

@ -0,0 +1,189 @@
* TextEdit macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_TEBootInit MAC
Tool $122
<<<
~TEStartUp MAC
PxW ]1;]2
_TEStartUp MAC
Tool $222
<<<
_TEShutDown MAC
Tool $322
<<<
~TEVersion MAC
PHA
_TEVersion MAC
Tool $422
<<<
_TEReset MAC
Tool $522
<<<
~TEStatus MAC
PHA
_TEStatus MAC
Tool $622
<<<
~TENew MAC
P2SL ]1
_TENew MAC
Tool $922
<<<
~TEKill MAC
PHL ]1
_TEKill MAC
Tool $A22
<<<
~TESetText MAC
PHWL ]1;]2
PHLW ]3;]4
PxL ]5;]6
_TESetText MAC
Tool $B22
<<<
~TEGetText MAC
PHS 2
PHWL ]1;]2
PHLW ]3;]4
PxL ]5;]6
_TEGetText MAC
Tool $C22
<<<
~TEGetTextInfo MAC
PHLW ]1;]2
PHL ]3
_TEGetTextInfo MAC
Tool $D22
<<<
~TEIdle MAC
PHL ]1
_TEIdle MAC
Tool $E22
<<<
~TEActivate MAC
PHL ]1
_TEActivate MAC
Tool $F22
<<<
~TEDeactivate MAC
PHL ]1
_TEDeactivate MAC
Tool $1022
<<<
~TEClick MAC
PxL ]1;]2
_TEClick MAC
Tool $1122
<<<
~TEUpdate MAC
PHL ]1
_TEUpdate MAC
Tool $1222
<<<
~TEPaintText MAC
P2SL ]1
PxL ]2;]3
PHWL ]4;]5
_TEPaintText MAC
Tool $1322
<<<
~TEKey MAC
PxL ]1;]2
_TEKey MAC
Tool $1422
<<<
~TECut MAC
PHL ]1
_TECut MAC
Tool $1622
<<<
~TECopy MAC
PHL ]1
_TECopy MAC
Tool $1722
<<<
~TEPaste MAC
PHL ]1
_TEPaste MAC
Tool $1822
<<<
~TEClear MAC
PHL ]1
_TEClear MAC
Tool $1922
<<<
~TEInsert MAC
PHWL ]1;]2
PHLW ]3;]4
PxL ]5;]6
_TEInsert MAC
Tool $1A22
<<<
~TEReplace MAC
PHWL ]1;]2
PHLW ]3;]4
PxL ]5;]6
_TEReplace MAC
Tool $1B22
<<<
~TEGetSelection MAC
PxL ]1;]2;]3
_TEGetSelection MAC
Tool $1C22
<<<
~TESetSelection MAC
PxL ]1;]2;]3
_TESetSelection MAC
Tool $1D22
<<<
~TEGetSelectionStyle MAC
PHA
PxL ]1;]2;]3
_TEGetSelectionStyle MAC
Tool $1E22
<<<
~TEStyleChange MAC
PHW ]1
PxL ]2;]3
_TEStyleChange MAC
Tool $1F22
<<<
~TEOffsetToPoint MAC
PxL ]1;]2;]3;]4
_TEOffsetToPoint MAC
Tool $2022
<<<
~TEPointToOffset MAC
PHS 2
PxL ]1;]2;]3
_TEPointToOffset MAC
Tool $2122
<<<
~TEGetDefProc MAC
PHS 2
_TEGetDefProc MAC
Tool $2222
<<<
~TEGetRuler MAC
PHWL ]1;]2
PHL ]3
_TEGetRuler MAC
Tool $2322
<<<
~TESetRuler MAC
PHW ]1
PxL ]2;]3
_TESetRuler MAC
Tool $2422
<<<
~TEScroll MAC
PHW ]1
PxL ]2;]3;]4
_TEScroll MAC
Tool $2522
<<<

795
src/macro/UTIL.MACS.S Normal file
View File

@ -0,0 +1,795 @@
*=================================================
* Utility Macros - from Merlin disk
* by Dave Klimas, et al
*
* Copyright Apple Computer, Inc. 1986, 1987
* and Roger Wagner Publishing, Inc. 1988
* All Rights Reserved
*-------------------------------------------------
PHWL MAC
PHW ]1
PHL ]2
<<<
PHLW MAC
PHL ]1
PHW ]2
<<<
PxW MAC
DO ]0/1
PHW ]1
DO ]0/2
PHW ]2
DO ]0/3
PHW ]3
DO ]0/4
PHW ]4
FIN
FIN
FIN
FIN
<<<
PxL MAC
DO ]0/1
PHL ]1
DO ]0/2
PHL ]2
DO ]0/3
PHL ]3
DO ]0/4
PHL ]4
FIN
FIN
FIN
FIN
<<<
P2SL MAC
PHA
P1SL MAC
PHA
PHL MAC
IF #=]1
PEA ^]1
ELSE
PHW ]1+2
FIN
PHW ]1
<<<
P2SW MAC
PHA
P1SW MAC
PHA
PHW MAC
IF #=]1
PEA ]1
ELSE
IF MX/2
LDA ]1+1
PHA
FIN
LDA ]1
PHA
FIN
<<<
PushSpace MAC
PHS MAC
DO ]0
LUP ]1
PHA
--^
ELSE
PHA
FIN
<<<
********************************
Push4 MAC
PushLong #0
PushLong #0
<<<
PushPtr MAC
PEA ^]1
PEA ]1
EOM
PushLong MAC
IF #=]1
PushWord #^]1
ELSE
PushWord ]1+2
FIN
PushWord ]1
<<<
PushWord MAC
IF #=]1
PEA ]1
ELSE
IF MX/2
LDA ]1+1
PHA
FIN
LDA ]1
PHA
FIN
<<<
PullLong MAC
DO ]0
PullWord ]1
PullWord ]1+2
ELSE
PullWord
PullWord
FIN
<<<
PullWord MAC
PLA
DO ]0
STA ]1
FIN
IF MX/2
PLA
DO ]0
STA ]1+1
FIN
FIN
<<<
MoveLong MAC
MoveWord ]1;]2
MoveWord ]1+2;]2+2
<<<
MoveWord MAC
LDA ]1
STA ]2
IF MX/2
LDA ]1+1
STA ]2+1
FIN
<<<
MoveBlock MAC ;1st_byte;last_byte;dest
DO ]2/]1
DO ]3/]1
LDX #]2
LDY #]3+]2-]1
LDA #]2-]1
MVP ]1,]3
ELSE
LDX #]1
LDY #]3
LDA #]2-]1
MVN ]1,]3
FIN
ELSE
ERR 1 ;Last adrs < first adrs
FIN
<<<
CmpLong MAC
LDA ]1
CMP ]2
IF #=]1
LDA ^]1
ELSE
LDA ]1+2
FIN
IF #=]2
SBC ^]2
ELSE
SBC ]2+2
FIN
<<<
LONGM MAC
LONGACC MAC ;Assumes native mode
IF MX&2 ;If A is now short
REP %00100000
FIN
<<<
LONGX MAC
LONGXY MAC ;Assumes native mode
IF MX&1 ;If X is now short
REP %00010000
FIN
<<<
LONG MAC
LONGAX MAC ;Assumes native mode
IF MX ;If not now in full 16
REP %00110000
FIN
<<<
SHORTM MAC
SHORTACC MAC ;Assumes native mode
IF MX&2 ;If A is now short,
ELSE ; ignore
SEP %00100000
FIN
<<<
SHORTX MAC
SHORTXY MAC ;Assumes native mode
IF MX&1 ;If X is now short,
ELSE ; ignore
SEP %00010000
FIN
<<<
SHORT MAC
SHORTAX MAC ;Assumes native mode
IF MX!%11 ;If not now in full 8
SEP %00110000
FIN
<<<
LONGI MAC ; Duplicates APW function
LST OFF
DO ]1 ; If arg = 1 = "on" = make long
IF MX-3/-1 ; If M is short and X is long
; Leave alone
FIN ; End of this test
IF MX/3 ; If M is short and X is short
MX %10 ; Make X long, leave M short
FIN ; End of this test
IF MX!3/3 ; If M is long and X is long
FIN ; Leave alone
IF MX-2/-1 ; If M is long and X is short
MX %00 ; Make X long, leave M long
FIN ; End of this test
ELSE ; If arg = 0 = "off" = make short
IF MX/3 ; If M is short and X is short
; Leave alone
FIN ; End of this test
IF MX-3/-1 ; If M is short and X is long
MX %11 ; Make X short, leave M short
FIN ; End of this test
IF MX-2/-1 ; If M is long and X is short
; Leave alone
FIN ; End of this test
IF MX!3/3 ; If M is long and X is long
MX %01 ; Make X short, leave M long
FIN ; Leave alone
FIN ; End of macro tests
LST RTN
<<<
LONGA MAC ; Duplicates APW function
LST OFF
DO ]1 ; If arg = 1 = "on" = make long
IF MX-3/-1 ; If M is short and X is long
MX %00 ; Make M long, leave X long
FIN ; End of this test
IF MX/3 ; If M is short and X is short
MX %01 ; Make M long, leave X short
FIN ; End of this test
IF MX!3/3 ; If M is long and X is long
FIN ; Leave alone
IF MX-2/-1 ; If M is long and X is short
; Leave alone
FIN ; End of this test
ELSE ; If arg = 0 = "off" = make short
IF MX/3 ; If M is short and X is short
; Leave alone
FIN ; End of this test
IF MX-3/-1 ; If M is short and X is long
; Leave alone
FIN ; End of this test
IF MX-2/-1 ; If M is long and X is short
MX %11 ; Make M short, leave X short
FIN ; End of this test
IF MX!3/3 ; If M is long and X is long
MX %10 ; Make M short, leave X long
FIN ; Leave alone
FIN ; End of macro tests
LST RTN
<<<
M65816 MAC
DO ]1
XC
XC ; Full 65816 mode for assembler
MX %00
ELSE
MX %11 ; 8 bit mode for assembler
FIN
<<<
Expmac MAC ; Replace APW GEN function
DO ]1
EXP ONLY ; Expand macros
ELSE
EXP OFF
FIN
<<<
Tool MAC
LDX #]1 ; load tool call #
JSL $E10000 ; go to dispatcher
<<<
**************************************************
* Auto-menu item macros *
* This is one alternative for defining a menu *
* item. It has the advantage of letting you *
* include specifiers for Bold, Italic, etc. *
**************************************************
*-------------------------------------------------
* Syntax:
* ]mnum = 0 ; initialize menu # at startvalue-1
* Menu ' Menu 1 '
*
* (See Menu macro, defined later....)
*
* ]inum = 255 ; Menu item starts with #256
* Item ' Choice 1 ';Kybd;'Bb';Check
* Ch1 = ]inum ; Set label Ch1 if somewhere else
* needs to use this item #.
* Item ' Choice 2 ';Disable;'';Kybd;'Cc'
* Item ' Choice 3 ';Divide;''
*
* Menu ' Menu 2 '
*
* Item ' Choice 4 ';Bold;'';Check
* Item ' Choice 5 ';Italic;'';Blank
* Item ' Choice 6 ';Underline';Kybd;'Dd'
*
* IMPORTANT: ALL items, except for Check and Blank, are followed by a second
* value. For the Kybd item, the ASCII characters follow in single quotes, Ex:
* Kybd;'Cc' (specifies Apple-C as an equivalent).
* All other items use a null 2nd value, as in:
* Italic;'' or Divide;'' etc.
*
* The variable ]inum MUST be initialized for the value of your first
* menu item MINUS 1 before using the first Item macro.
*
* Check or Blank, if used, MUST be the last item in the macro line.
*
* There can be up to three parameter pairs after the item name.
*-------------------------------------------------
* The point of all this is that rather than hard-
* code menu items values and subsequent references
* to that number when disabling menus, etc., this
* lets you add and delete menu items at will,
* and have labels like Ch1, etc. above, auto-
* matically set for the correct value during the
* assembly.
*-------------------------------------------------
* Equates for Item macro:
Bold = 'B' ; bold menu item
Disable = 'D' ; disabled menu item
Italic = 'I' ; italic menu item
Underline = 'U' ; underlined menu item
Divide = 'V' ; menu dividing line
ColorHi = 'X' ; color hilite menu item
Kybd = '*' ; keyboard menu equivalent
Check = $1243 ; menu item with checkmark
Blank = $2043 ; menu item with blank
*-------------------------------------------------
Item MAC ; Macro for creating a menu item
ASC '--'
ASC ]1 ; Text of menu item
ASC '\H'
DA ]inum ; Menu item #
DO ]0/2 ; Only if more items to do... (>2)
DO ]2-Check-1/-1 ; Only if Check item
DA ]2 ; ]2 = Check
ELSE ; otherwise kybd char or null
DO ]2-Blank-1/-1 ; Only if Blank check item
DA ]2 ; ]2 = Blank
ELSE
DB ]2 ; Function char value
ASC ]3 ; ASCII argument, if any for Kybd
FIN
FIN
FIN
DO ]0/4 ; Only if more items to do... (>3)
DO ]4-Check-1/-1 ; Only if Check item
DA ]4 ; ]4 = Check
ELSE ; otherwise kybd char or null
DO ]4-Blank-1/-1 ; Only if Blank check item
DA ]4 ; ]4 = Blank
ELSE
DB ]4 ; Function char value
ASC ]5 ; ASCII argument, if any for Kybd
FIN
FIN
FIN
DO ]0/6 ; Only if more items to do... (>5)
DO ]6-Check-1/-1 ; Only if Check item
DA ]6 ; ]6 = Check
ELSE ; otherwise kybd char or null
DO ]6-Blank-1/-1 ; Only if Blank check item
DA ]6 ; ]6 = Blank
ELSE
DB ]6 ; Function char value
ASC ]7 ; ASCII argument, if any for Kybd
FIN
FIN
FIN
DB $00 ; End of menu item
]inum = ]inum+1
<<<
**************************************************
* This is another alternative macro for both *
* menus and menu items. It is simpler, and *
* more compact, but not as versatile. *
**************************************************
*===============================================
* Variables ]mnum,]inum should be defined
* prior to using these MenuMaker macros.
*
* They both should be starting value-1
*
* Syntax:
*
* ]mnum = 0 ; 1st menu number will be 1
* ]inum = 255 ; 1st menu item number will be 256
*
* Menu ' @';X ; Apple menu, color highlighting.
*
* MItem ' About... ' ; "About" menu item
*
* Menu ' Menu Title 1' ; (this will be menu number 2)
*
* MItem ' Choice 1 '
* MItem ' Choice 2 ';'D*Cc' ; Disabled, kybd char: Cc
* ; Above will be menu item #'s 2&3
*
*
Menu MAC
ASC '>>'
ASC ]1
ASC '\H'
DA ]mnum
DO ]0>1
ASC ]2
FIN
DB 0
]mnum = ]mnum+1
<<<
MItem MAC
ASC '--'
ASC ]1
ASC '\H'
DA ]inum
DO ]0>1
ASC ]2
FIN
DB 0
]inum = ]inum+1
<<<
*-----------------------------------------------------
*
* Native -- Processor is in LONG "native" mode.
* Native Long -- Processor is in LONG "native" mode.
* Native Short -- Processor is in SHORT "native" mode.
*
Native MAC
CLC
XCE
IF 0=]0 ;If Native (Long)
LONGAX
FIN
DO ]0
IF L=]1 ;If Native Long
LONGAX
FIN ;If Native Short only
FIN ; do CLC, XCE.
EOM
*--------------------------------------------------------
*
* Emulation -- Set Processor into "emulation" mode.
*
Emulation MAC
SEC
XCE
EOM
*-----------------------------------------------------
*
* WriteCh -- Print Character From Accumulator
* WriteCh ADDR -- Print Character At Label
* WriteCh ADDR,X -- Print Character At Label,X
*
WriteCh MAC
DO ]0
LDA ]1
FIN
PHA
LDX #$180C
JSL $E10000
EOM
*-----------------------------------------------------
*
* ReadCh -- Get Keypress in Accumulator
* ReadCh ADDR -- Get Keypress in Label
*
ReadCh MAC
PEA 0
PEA 1
LDX #$220C
JSL $E10000
PLA
DO ]0
STA ]1
FIN
EOM
*-----------------------------------------------------
*
* WriteLn "STRING" -- Print Literal String with CR.
* WriteLn ADDR -- Print String At Address with CR.
* WriteLn -- Print CR.
*
WriteLn MAC
DO ]0
WriteStr ]1
FIN
WriteCh #$8D
EOM
*-----------------------------------------------------
*
* WriteStr "STRING" -- Print Literal String.
* WriteStr ADDR -- Print String At Address.
* WriteStr -- Print String At A (Lo),Y (Hi).
*
WriteStr MAC
IF 0=]0 ;If No Label
PHY
PHA
ELSE
IF "=]1
PEA ^]String
PEA ]String
BRL ]Skip
]String STR ]1
]Skip
ELSE
IF '=]1
PEA ^]String
PEA ]String
BRL ]Skip
]String STR ]1
]Skip
ELSE
PEA ^]1
PEA ]1
FIN
FIN
FIN
LDX #$1C0C
JSL $E10000
EOM
*-----------------------------------------------------
*
* DrawStrHV 8;12;"STRING" Print Literal String on
* DrawStr 8;12;ADDR Super Hi-Res Screen.
*
DrawStrHV MAC
HtabVtab ]1;]2
DrawStr ]3
<<<
*-----------------------------------------------------
*
* DrawStr "STRING" -- Print Literal String.
* DrawStr ADDR -- Print String At Address.
*
DrawStr MAC
IF "=]1
PEA ^]String
PEA ]String
BRL ]Skip
]String STR ]1
]Skip
ELSE
IF '=]1
PEA ^]String
PEA ]String
BRL ]Skip
]String STR ]1
]Skip
ELSE
PEA ^]1
PEA ]1
FIN
FIN
LDX #$A504 ;DrawString
JSL $E10000
<<<
*-----------------------------------------------------
*
* HtabVtab #8;#12 -- Position at Htab 8, Vtab 12.
* HtabVtab H;V on super hires screens.
*
HtabVtab MAC
IF #=]1
LDA ]1*8
ELSE
LDA ]1
ASL
ASL
ASL
FIN
PHA
IF #=]1
LDA ]2*8
ELSE
LDA ]2
ASL
ASL
ASL
FIN
PHA
LDX #$3A04 ;MoveTo
JSL $E10000
<<<
*-----------------------------------------------------
*
* Deref MyHandle;MyPtr -- Uses zero page 0-3 to
* de-reference a handle.
*
Deref MAC
LDA ]1
LDX ]1+2
STA 0
STX 2
LDA [0]
STA ]2
LDY #2
LDA [0],Y
STA ]2+2
<<<
*==================================================
* The MLI16 macro assumes the CALLDOS file from the
* SUBROUT.LIB is linked in. It provides an easy
* way to make MLI calls. Example syntax:
*
* MLI16 close;CLSPARMS
*--------------------------------------------------
MLI16 MAC ;Uses CALLDOS file in the
IF MX ; subroutine library
REP %00110000 ;Force full 16-bit mode, if
FIN ; not already there.
LDX #]1 ;Call code (use MLI.CODES)
LDA #]2 ;Low word of PARMS tbl adr
JSR CALLDOS ;Returns CS if an error
<<<
*=================================================
* The following macros are APW-equivalents for
* compatibility with APW style listings.
*
* One difference between Merlin and APW here: Instead of
* using the syntax PULL1 ADDRESS;X, Merlin can take
* the raw statement PULL1 ADDRESS,X.
*
PULL1 MAC
SEP #%00100000
PLA
REP #%00100000
DO ]0/1 ;If 1 parm
IF MX>0
STA ]1
FIN
IF MX=0
STAL ]1
FIN
FIN
<<<
PULL3 MAC
SEP #%00100000
PLA
STA ]1
REP #%00100000
PLA
STA ]1+1
FIN
<<<
PUSH1 MAC
SEP #%00100000
IF ]0/1 ;if one parm
LDA ]1
FIN
PHA
REP #%00100000
<<<
PUSH3 MAC
IF #=]1
LDA #^]1 ;get two hi order bytes
PHA
PHB
LDA #<]1
STA 1,S
ELSE
LDA ]1+1
PHA
PHB
LDA ]1
STA 1,S
FIN
<<<

503
src/macro/WINDOW.MACS.S Normal file
View File

@ -0,0 +1,503 @@
* Window Manager macros
* by Dave Klimas
;
; Copyright Apple Computer, Inc. 1986, 1987
; and Roger Wagner Publishing, Inc. 1988
; All Rights Reserved
;
_WindBootInit MAC
Tool $10E
<<<
~WindStartUp MAC
PHW ]1
_WindStartUp MAC
Tool $20E
<<<
_WindShutDown MAC
Tool $30E
<<<
~WindVersion MAC
PHA
_WindVersion MAC
Tool $40E
<<<
_WindReset MAC
Tool $50E
<<<
~WindStatus MAC
PHA
_WindStatus MAC
Tool $60E
<<<
~NewWindow MAC
P2SL ]1
_NewWindow MAC
Tool $90E
<<<
~CheckUpdate MAC
P1SL ]1
_CheckUpdate MAC
Tool $A0E
<<<
~CloseWindow MAC
PHL ]1
_CloseWindow MAC
Tool $B0E
<<<
~DeskTop MAC
IF 2=]1
IF 3=]1
IF 4=]1
PHS 2
FIN
FIN
FIN
PHWL ]1;]2
_DeskTop MAC
Tool $C0E
<<<
~SetWTitle MAC
PxL ]1;]2
_SetWTitle MAC
Tool $D0E
<<<
~GetWTitle MAC
P2SL ]1
_GetWTitle MAC
Tool $E0E
<<<
~SetFrameColor MAC
PxL ]1;]2
_SetFrameColor MAC
Tool $F0E
<<<
~GetFrameColor MAC
PxL ]1;]2
_GetFrameColor MAC
Tool $100E
<<<
~SelectWindow MAC
PHL ]1
_SelectWindow MAC
Tool $110E
<<<
~HideWindow MAC
PHL ]1
_HideWindow MAC
Tool $120E
<<<
~ShowWindow MAC
PHL ]1
_ShowWindow MAC
Tool $130E
<<<
~SendBehind MAC
PxL ]1;]2
_SendBehind MAC
Tool $140E
<<<
~FrontWindow MAC
PHS 2
_FrontWindow MAC
Tool $150E
<<<
~SetInfoDraw MAC
PxL ]1;]2
_SetInfoDraw MAC
Tool $160E
<<<
~FindWindow MAC
P1SL ]1
PxW ]2;]3
_FindWindow MAC
Tool $170E
<<<
~TrackGoAway MAC
P1SW ]1
PHWL ]2;]3
_TrackGoAway MAC
Tool $180E
<<<
~MoveWindow MAC
PxW ]1;]2
PHL ]3
_MoveWindow MAC
Tool $190E
<<<
~DragWindow MAC
PxW ]1;]2;]3;]4
PxL ]5;]6
_DragWindow MAC
Tool $1A0E
<<<
~GrowWindow MAC
PHS 2
PxW ]1;]2;]3;]4
PHL ]5
_GrowWindow MAC
Tool $1B0E
<<<
~SizeWindow MAC
PxW ]1;]2
PHL ]3
_SizeWindow MAC
Tool $1C0E
<<<
~TaskMaster MAC
PHA
PHWL ]1;]2
_TaskMaster MAC
Tool $1D0E
<<<
~BeginUpdate MAC
PHL ]1
_BeginUpdate MAC
Tool $1E0E
<<<
~EndUpdate MAC
PHL ]1
_EndUpdate MAC
Tool $1F0E
<<<
~GetWMgrPort MAC
PHS 2
_GetWMgrPort MAC
Tool $200E
<<<
~PinRect MAC
PHS 2
PxW ]1;]2
PHL ]3
_PinRect MAC
Tool $210E
<<<
~HiliteWindow MAC
PHWL ]1;]2
_HiliteWindow MAC
Tool $220E
<<<
~ShowHide MAC
PHWL ]1;]2
_ShowHide MAC
Tool $230E
<<<
~BringToFront MAC
PHL ]1
_BringToFront MAC
Tool $240E
<<<
_WindNewRes MAC
Tool $250E
<<<
~TrackZoom MAC
P1SW ]1
PHWL ]2;]3
_TrackZoom MAC
Tool $260E
<<<
~ZoomWindow MAC
PHL ]1
_ZoomWindow MAC
Tool $270E
<<<
~SetWRefCon MAC
PxL ]1;]2
_SetWRefCon MAC
Tool $280E
<<<
~GetWRefCon MAC
P2SL ]1
_GetWRefCon MAC
Tool $290E
<<<
~GetNextWindow MAC
P2SL ]1
_GetNextWindow MAC
Tool $2A0E
<<<
~GetWKind MAC
P1SL ]1
_GetWKind MAC
Tool $2B0E
<<<
~SetWFrame MAC
PHWL ]1;]2
_SetWFrame MAC
Tool $2D0E
<<<
~GetWFrame MAC
P1SL ]1
_GetWFrame MAC
Tool $2C0E
<<<
~GetStructRgn MAC
P2SL ]1
_GetStructRgn MAC
Tool $2E0E
<<<
~GetContentRgn MAC
P2SL ]1
_GetContentRgn MAC
Tool $2F0E
<<<
~GetUpdateRgn MAC
P2SL ]1
_GetUpdateRgn MAC
Tool $300E
<<<
~GetDefProc MAC
P2SL ]1
_GetDefProc MAC
Tool $310E
<<<
~SetDefProc MAC
PxL ]1;]2
_SetDefProc MAC
Tool $320E
<<<
~GetWControls MAC
P2SL ]1
_GetWControls MAC
Tool $330E
<<<
~SetOriginMask MAC
PHWL ]1;]2
_SetOriginMask MAC
Tool $340E
<<<
~GetInfoRefCon MAC
P2SL ]1
_GetInfoRefCon MAC
Tool $350E
<<<
~SetInfoRefCon MAC
PxL ]1;]2
_SetInfoRefCon MAC
Tool $360E
<<<
~GetZoomRect MAC
P2SL ]1
_GetZoomRect MAC
Tool $370E
<<<
~SetZoomRect MAC
PxL ]1;]2
_SetZoomRect MAC
Tool $380E
<<<
~RefreshDesktop MAC
PHL ]1
_RefreshDesktop MAC
Tool $390E
<<<
~InvalRect MAC
PHL ]1
_InvalRect MAC
Tool $3A0E
<<<
~InvalRgn MAC
PHL ]1
_InvalRgn MAC
Tool $3B0E
<<<
~ValidRect MAC
PHL ]1
_ValidRect MAC
Tool $3C0E
<<<
~ValidRgn MAC
PHL ]1
_ValidRgn MAC
Tool $3D0E
<<<
~GetContentOrigin MAC
P2SL ]1
_GetContentOrigin MAC
Tool $3E0E
<<<
~SetContentOrigin MAC
PxW ]1;]2
PHL ]3
_SetContentOrigin MAC
Tool $3F0E
<<<
~GetDataSize MAC
P2SL ]1
_GetDataSize MAC
Tool $400E
<<<
~SetDataSize MAC
PxW ]1;]2
PHL ]3
_SetDataSize MAC
Tool $410E
<<<
~GetMaxGrow MAC
P2SL ]1
_GetMaxGrow MAC
Tool $420E
<<<
~SetMaxGrow MAC
PxW ]1;]2
PHL ]3
_SetMaxGrow MAC
Tool $430E
<<<
~GetScroll MAC
P2SL ]1
_GetScroll MAC
Tool $440E
<<<
~SetScroll MAC
PxW ]1;]2
PHL ]3
_SetScroll MAC
Tool $450E
<<<
~GetPage MAC
P2SL ]1
_GetPage MAC
Tool $460E
<<<
~SetPage MAC
PxW ]1;]2
PHL ]3
_SetPage MAC
Tool $470E
<<<
~GetContentDraw MAC
P2SL ]1
_GetContentDraw MAC
Tool $480E
<<<
~SetContentDraw MAC
PxL ]1;]2
_SetContentDraw MAC
Tool $490E
<<<
~GetInfoDraw MAC
P2SL ]1
_GetInfoDraw MAC
Tool $4A0E
<<<
~SetSysWindow MAC
PHL ]1
_SetSysWindow MAC
Tool $4B0E
<<<
~GetSysWFlag MAC
P1SL ]1
_GetSysWFlag MAC
Tool $4C0E
<<<
~StartDrawing MAC
PHL ]1
_StartDrawing MAC
Tool $4D0E
<<<
~SetWindowIcons MAC
P2SL ]1
_SetWindowIcons MAC
Tool $4E0E
<<<
~GetRectInfo MAC
PxL ]1;]2
_GetRectInfo MAC
Tool $4F0E
<<<
~StartInfoDrawing MAC
PxL ]1;]2
_StartInfoDrawing MAC
Tool $500E
<<<
_EndInfoDrawing MAC
Tool $510E
<<<
~GetFirstWindow MAC
PHS 2
_GetFirstWindow MAC
Tool $520E
<<<
~WindDragRect MAC
P2SL ]1
PHLW ]2;]3
PHWL ]4;]5
PxL ]6;]7
PHW ]8
_WindDragRect MAC
Tool $530E
<<<
~DrawInfoBar MAC
PHL ]1
_DrawInfoBar MAC
Tool $550E
<<<
~WindowGlobal MAC
P1SW ]1
_WindowGlobal MAC
Tool $560E
<<<
~SetContentOrigin2 MAC
PxW ]1;]2;]3
PHL ]4
_SetContentOrigin2 MAC
Tool $570E
<<<
~GetWindowMgrGlobals MAC
PHS 2
_GetWindowMgrGlobals MAC
Tool $580E
<<<
~AlertWindow MAC
P1SW ]1
PxL ]2;]3
_AlertWindow MAC
Tool $590E
<<<
~StartFrameDrawing MAC
PHL ]1
_StartFrameDrawing MAC
Tool $5A0E
<<<
_EndFrameDrawing MAC
Tool $5B0E
<<<
~ResizeWindow MAC
PHWL ]1;]2
PHL ]3
_ResizeWindow MAC
Tool $5C0E
<<<
_TaskMasterContent MAC ;private
Tool $5D0E
<<<
_TaskMasterKey MAC ;private
Tool $5E0E
<<<
~TaskMasterDA MAC
P1SW ]1
PHL ]2
_TaskMasterDA MAC
Tool $5F0E
<<<
~CompileText MAC
P2SW ]1
PxL ]2;]3
PHW ]4
_CompileText MAC
Tool $600E
<<<
~NewWindow2 MAC
PHS 2
PxL ]1;]2;]3;]4
PHWL ]5;]6
PHW ]7
_NewWindow2 MAC
Tool $610E
<<<
~ErrorWindow MAC
P1SW ]1
PHLW ]2;]3
_ErrorWindow MAC
Tool $620E
<<<

View File

@ -1,37 +1,142 @@
REL
TYP $B3
DSK main.l
rel
typ $B3
dsk main.l
MX %00 ; enable 16-bit mode
mx %00
phk
plb
mx %11
sta $E0
pha
pha
plb
pld
sta $C000
sta $C054
mx %00
; load a char and write it to the 40 char text buffer
bois lda "B"
sta $E00400
sta $E00401
sta $E00402
jmp bois
; Important locations
SPEAKER equ $E0C030
PRODOS16 equ $E100A8
SPEAKER EQU $E0C030
PRODOS16 EQU $E100A8
PHK
PLB
* Beep code freezes
*beep LDA SPEAKER
* LDY #1000
* LDX #1000
*loop DEX
* BNE loop
* DEY
* BNE beep
JSL PRODOS16
jsl PRODOS16
; This exit code is "device busy", why is it the only one
; that works?!
DA $29
ADRL QP
da $29
adrl QP
bcs ERROR
ERROR BRK
ERROR brk
QP adrl $0000
DA $00
da $00