supermario/base/SuperMarioProj.1994-02-09/Interfaces/AIncludes/IntModemMgrEqu.a
2019-06-29 23:17:50 +08:00

195 lines
5.5 KiB
Plaintext

;__________________________________________________________________________________________________
;
; File: IntModemMgrEqu.a
;
; Contains: Interface file for the internal modem manager
;
; Written by: Steven Swenson
;
; Copyright © 1993-1993 by Apple Computer, Inc. All rights reserved.
;
; Change History (most recent first):
;
; <1> 4/8/93 SES first checked in
;__________________________________________________________________________________________________
; internal modem manager power commands
immgPowerOff EQU 0
immgPowerOn EQU 1
; internal modem manager wake up on ring commands
immgWakeUpOff EQU 0
immgWakeUpOn EQU 1
; internal modem manager sound control commands
immgSndOff EQU 0
immgSndOn EQU 1
; internal modem manager sound volume commands
immgVolSet EQU 0
immgVolRead EQU 1
; internal modem manager hardware arbitration commands
immgSndRelease EQU 0
immgSndTakeover EQU 1
; result codes used by the hardware arbitration commands
immgArbOK EQU 0
immgArbFailed EQU 1
; Internal modem Manager Errors
immgBusyErr EQU -14000 ; IntModemMgr never ready to start handshake
immgReplyTOErr EQU -14001 ; Timed out waiting for reply
immgSendStartErr EQU -14002 ; During send, IntModemMgr did not start hs
immgSendEndErr EQU -14003 ; During send, IntModemMgr did not finish hs
immgRecvStartErr EQU -14004 ; During receive, IntModemMgr did not start hs
immgRecvEndErr EQU -14005 ; During recv, IntModemMgr did not finish hs
immgNoBoardErr EQU -14006 ; No board installed
immgInvalidSelector EQU -14007 ; Invalid modem trap selector
immgInitError EQU -14008 ; Problem during initialization
immgInvalidCommand EQU -14009 ; Invalid/unimplemented selector command
immgCommandError EQU -14010 ; Selector command failed (command specific)
; internal modem manager parameter block structure
immgParamBlock RECORD 0,Increment ; internal modem manager command record
immgCommand DS.W 1 ; Command
immgLength DS.W 1 ; Length
immgSBuffer DS.L 1 ; Send Buffer
immgRBuffer DS.L 1 ; Receive Buffer
immgBlkSize EQU *-immgParamBlock
ENDR
; internal modem manager primitives table structure
immgPrimTable RECORD 0
primFlags DS.W 1 ; flags reserved for Apple use
numPrims DS.W 1 ; number of primitives in table
; if you add any more private storage fields to this record, add them above here.
; Make sure you update CopyModemPrims if you add storage to the structure.
; if you add any more primitives, add them to the end of the table.
primOffset EQU *-immgPrimTable ; offset to this point
mdmType DS.L 1 ; modem type routine
mdmPower DS.L 1 ; modem power routine
mdmWakeUp DS.L 1 ; modem wake up routine
mdmStatus DS.L 1 ; modem status routine
mdmPrime DS.L 1 ; modem prime routine
mdmSndCtl DS.L 1 ; modem sound control routine
mdmExists DS.L 1 ; modem exists routine
mdmSetUp DS.L 1 ; modem set up routine
mdmTearDown DS.L 1 ; modem tear down routine
mdmName DS.L 1 ; modem name routine
mdmSndVol DS.L 1 ; modem sound volume routine
mdmSndHW DS.L 1 ; modem sys sound HW arbitration
size EQU *-immgPrimTable
ENDR
;----------------------------------------------------------------------
; These end up going into the GestaltEqu.a file
;----------------------------------------------------------------------
gestaltIntModemType EQU 'immg' ; internal modem manager type
gestaltIMBabyRockModem EQU $04 ; Blackbird Express modem
gestaltIM3615Modem EQU $80 ; 3615 Express modem
;----------------------------------------------------------------------
; internal modem manager routine selectors
;----------------------------------------------------------------------
selIModemPower EQU 1
selIModemWakeUp EQU 2
selIModemStatus EQU 3
selIModemPrime EQU 4
selIModemSndCtl EQU 5
selIModemGetInd EQU 6
selIModemFind EQU 7
selIModemInstall EQU 8
selIModemRemove EQU 9
selIModemGetName EQU 10
sellReserved1 EQU 11
sellReserved2 EQU 12
selIModemSndVol EQU 13
sellModemSndHW EQU 14
;----------------------------------------------------------------------
; internal modem manager routine macros
;----------------------------------------------------------------------
_IntModemDispatch OPWORD $ABEA
MACRO
_IModemPower
move.w #selIModemPower,d0
_IntModemDispatch
ENDM
MACRO
_IModemWakeUp
move.w #selIModemWakeUp,d0
_IntModemDispatch
ENDM
MACRO
_IModemStatus
move.w #selIModemStatus,d0
_IntModemDispatch
ENDM
MACRO
_IModemPrime
move.w #selIModemPrime,d0
_IntModemDispatch
ENDM
MACRO
_IModemSndCtl
move.w #selIModemSndCtl,d0
_IntModemDispatch
ENDM
MACRO
_IModemGetInd
move.w #selIModemGetInd,d0
_IntModemDispatch
ENDM
MACRO
_IModemFind
move.w #selIModemFind,d0
_IntModemDispatch
ENDM
MACRO
_IModemInstall
move.w #selIModemInstall,d0
_IntModemDispatch
ENDM
MACRO
_IModemRemove
move.w #selIModemRemove,d0
_IntModemDispatch
ENDM
MACRO
_IModemGetName
move.w #selIModemGetName,d0
_IntModemDispatch
ENDM
MACRO
_IModemSndVol
move.w #selIModemSndVol,d0
_IntModemDispatch
ENDM
MACRO
_IModemSndHW
move.w #selIModemSndHW,d0
_IntModemDispatch
ENDM