home *** CD-ROM | disk | FTP | other *** search
/ Dave Lowe: AssemPro For Development Amiga Driver / Lowe_AssemProForDevelopmentAmigaDriver.adf / Includes / exec / alerts.i < prev    next >
Encoding:
Text File  |  1978-06-06  |  7.6 KB  |  235 lines

  1.     IFND EXEC_ALERTS_I@
  2. EXEC_ALERTS_I@ = 1
  3. ;*********************************************************************
  4. ;
  5. ;   Commodore Amiga -- ROM Operating System Executive Include File
  6. ;
  7. ;*********************************************************************
  8. ;
  9. ;   Source Control:
  10. ;
  11. ;       $Header: alerts.i,v 33.6 86/07/07 09:02:54 neil Exp $
  12. ;
  13. ;       $Locker:  $
  14. ;
  15. ;*********************************************************************
  16.  
  17. ;    BITDEF  S,ALERTWACK,1       ; in ExecBase.SysFlags
  18. SB_ALERTWACK = 1       ; in ExecBase.SysFlags
  19. SF_ALERTWACK = 1<<1       ; in ExecBase.SysFlags
  20.  
  21.  
  22. ;*********************************************************************
  23. ;
  24. ;  Format of the alert error number:
  25. ;
  26. ;    +---------------+----------------+--------------------------------+  
  27. ;    |D|  SubSysId   |  General Error |    SubSystem Specific Error    |
  28. ;    +---------------+----------------+--------------------------------+
  29. ;
  30. ;                    D:  DeadEnd alert
  31. ;             SubSysId:  indicates ROM subsystem number.
  32. ;        General Error:  roughly indicates what the error was
  33. ;       Specific Error:  indicates more detail
  34. ;**********************************************************************
  35.  
  36. ;
  37. ;  Use this macro for causing an alert.  THIS MACRO MAY CHANGE|
  38. ;  It is very sensitive to memory corruption.... like stepping on
  39. ;  location 4|  But it should work for now.
  40. ;
  41. ALERT           macro   $\1, $\2 ; (alertNumber, paramArray, scratch)
  42.                 movem.l d7/a5/a6,-(sp)
  43.                 move.l  #\1,d7
  44.                 IFD    \2
  45.                 lea     \2,a5
  46.                 ENDIF
  47.                 move.l  4,a6            ; (use proper name|||)
  48.                 jsr     _LVOAlert(a6)
  49.                 movem.l (sp)+,d7/a5/a6
  50.                 endm
  51.  
  52.  
  53. ;*********************************************************************
  54. ;
  55. ;  General Dead-End Alerts
  56. ;
  57. ;  For example:  timer.device cannot open math.library:
  58. ;
  59. ;       ALERT  (AN_TimerDev|AG_OpenLib|AO_MathLib),(A0),A1
  60. ;
  61. ;*********************************************************************
  62.  
  63. ;------ alert types
  64. AT_DeadEnd      equ $80000000
  65. AT_Recovery     equ $00000000
  66.  
  67. ;------ general purpose alert codes
  68. AG_NoMemory     equ $00010000
  69. AG_MakeLib      equ $00020000
  70. AG_OpenLib      equ $00030000
  71. AG_OpenDev      equ $00040000
  72. AG_OpenRes      equ $00050000
  73. AG_IOError      equ $00060000
  74. AG_NoSignal     equ $00070000
  75.  
  76. ;------ alert objects:
  77. AO_ExecLib      equ $00008001
  78. AO_GraphicsLib  equ $00008002
  79. AO_LayersLib    equ $00008003
  80. AO_Intuition    equ $00008004
  81. AO_MathLib      equ $00008005
  82. AO_CListLib     equ $00008006
  83. AO_DOSLib       equ $00008007
  84. AO_RAMLib       equ $00008008
  85. AO_IconLib      equ $00008009
  86. AO_ExpansionLib equ $0000800A
  87. AO_AudioDev     equ $00008010
  88. AO_ConsoleDev   equ $00008011
  89. AO_GamePortDev  equ $00008012
  90. AO_KeyboardDev  equ $00008013
  91. AO_TrackDiskDev equ $00008014
  92. AO_TimerDev     equ $00008015
  93. AO_CIARsrc      equ $00008020
  94. AO_DiskRsrc     equ $00008021
  95. AO_MiscRsrc     equ $00008022
  96. AO_BootStrap    equ $00008030
  97. AO_Workbench    equ $00008031
  98.  
  99.  
  100. ;*********************************************************************
  101. ;
  102. ;   Specific Dead-End Alerts:
  103. ;
  104. ;   For example:   exec.library -- corrupted memory list
  105. ;
  106. ;           ALERT  AN_MemCorrupt,(A0),A1
  107. ;
  108. ;*********************************************************************
  109.  
  110. ;------ exec.library
  111. AN_ExecLib      equ $01000000
  112. AN_ExcptVect    equ $81000001   ; 68000 exception vector checksum
  113. AN_BaseChkSum   equ $81000002   ; execbase checksum
  114. AN_LibChkSum    equ $81000003   ; library checksum failure
  115. AN_LibMem       equ $81000004   ; no memory to make library
  116. AN_MemCorrupt   equ $81000005   ; corrupted memory list
  117. AN_IntrMem      equ $81000006   ; no memory for interrupt servers
  118. AN_InitAPtr     equ $81000007   ; InitStruct() of an APTR source
  119. AN_SemCorrupt   equ $81000008   ; a semaphore is in illegal state
  120. AN_FreeTwice    equ $81000009   ; freeing memory that is already free
  121. AN_BogusExcpt   equ $8100000A   ; illegal 68k exception taken
  122.  
  123. ;------ graphics.library
  124. AN_GraphicsLib  equ $02000000
  125. AN_GfxNoMem     equ $82010000   ; graphics out of memory
  126. AN_LongFrame    equ $82010006   ; long frame, no memory
  127. AN_ShortFrame   equ $82010007   ; short frame, no memory
  128. AN_TextTmpRas   equ $02010009   ; text, no memory for TmpRas
  129. AN_BltBitMap    equ $8201000A   ; BltBitMap, no memory
  130. AN_RegionMemory equ $8201000B   ; regions, memory not available
  131. AN_MakeVPort    equ $82010030   ; MakeVPort, no memory
  132. AN_GfxNoLCM     equ $82011234   ; emergency memory not available
  133.  
  134. ;------ layers.library
  135. AN_LayersLib    equ $03000000
  136. AN_LayersNoMem  equ $83010000   ; layers out of memory
  137.  
  138. ;------ intuition.library
  139. AN_Intuition    equ $04000000
  140. AN_GadgetType   equ $84000001   ; unknown gadet type
  141. AN_BadGadget    equ $04000001   ; Recovery form of AN_GadgetType
  142. AN_CreatePort   equ $84010002   ; create port, no memory
  143. AN_ItemAlloc    equ $04010003   ; item plane alloc, no memory
  144. AN_SubAlloc     equ $04010004   ; sub alloc, no memory
  145. AN_PlaneAlloc   equ $84010005   ; plane alloc, no memory
  146. AN_ItemBoxTop   equ $84000006   ; item box top < RelZero
  147. AN_OpenScreen   equ $84010007   ; open screen, no memory
  148. AN_OpenScrnRast equ $84010008   ; open screen, raster alloc, no memory
  149. AN_SysScrnType  equ $84000009   ; open sys screen, unknown type
  150. AN_AddSWGadget  equ $8401000A   ; add SW gadgets, no memory
  151. AN_OpenWindow   equ $8401000B   ; open window, no memory
  152. AN_BadState     equ $8400000C   ; Bad State Return entering Intuition
  153. AN_BadMessage   equ $8400000D   ; Bad Message received by IDCMP
  154. AN_WeirdEcho    equ $8400000E   ; Weird echo causing incomprehension
  155. AN_NoConsole    equ $8400000F   ; couldn't open the Console Device
  156.  
  157. ;------ math.library
  158. AN_MathLib      equ $05000000
  159.  
  160. ;------ clist.library
  161. AN_CListLib     equ $06000000
  162.  
  163. ;------ dos.library
  164. AN_DOSLib       equ $07000000
  165. AN_StartMem     equ $07010001   ; no memory at startup 
  166. AN_EndTask      equ $07000002   ; EndTask didn't 
  167. AN_QPktFail     equ $07000003   ; Qpkt failure 
  168. AN_AsyncPkt     equ $07000004   ; Unexpected packet received 
  169. AN_FreeVec      equ $07000005   ; Freevec failed 
  170. AN_DiskBlkSeq   equ $07000006   ; Disk block sequence error 
  171. AN_BitMap       equ $07000007   ; Bitmap corrupt 
  172. AN_KeyFree      equ $07000008   ; Key already free 
  173. AN_BadChkSum    equ $07000009   ; Invalid checksum 
  174. AN_DiskError    equ $0700000A   ; Disk Error 
  175. AN_KeyRange     equ $0700000B   ; Key out of range 
  176. AN_BadOverlay   equ $0700000C   ; Bad overlay
  177.  
  178. ;------ ramlib.library
  179. AN_RAMLib       equ $08000000
  180. AN_BadSegList   equ $08000001   ; overlays are illegal for library segments
  181.  
  182. ;------ icon.library
  183. AN_IconLib      equ $09000000
  184.  
  185. ;------ expansion.library
  186. AN_ExpansionLib equ $0A000000
  187. AN_BadExpansionFree     equ $0A000001
  188.  
  189. ;------ audio.device
  190. AN_AudioDev     equ $10000000
  191.  
  192. ;------ console.device
  193. AN_ConsoleDev   equ $11000000
  194.  
  195. ;------ gameport.device
  196. AN_GamePortDev  equ $12000000
  197.  
  198. ;------ keyboard.device
  199. AN_KeyboardDev  equ $13000000
  200.  
  201. ;------ trackdisk.device
  202. AN_TrackDiskDev equ $14000000
  203. AN_TDCalibSeek  equ $14000001   ; calibrate: seek error
  204. AN_TDDelay      equ $14000002   ; delay: error on timer wait
  205.  
  206. ;------ timer.device
  207. AN_TimerDev     equ $15000000
  208. AN_TMBadReq     equ $15000001   ; bad request
  209. AN_TMBadSupply  equ $15000002   ; power supply does not supply ticks
  210.  
  211. ;------ cia.resource
  212. AN_CIARsrc      equ $20000000
  213.  
  214. ;------ disk.resource
  215. AN_DiskRsrc     equ $21000000
  216. AN_DRHasDisk    equ $21000001   : get unit: already has disk
  217. AN_DRIntNoAct   equ $21000002   ; interrupt: no active unit
  218.  
  219. ;------ misc.resource
  220. AN_MiscRsrc     equ $22000000
  221.  
  222. ;------ bootstrap
  223. AN_BootStrap    equ $30000000
  224. AN_BootError    equ $30000001   ; boot code returned an error
  225.  
  226. ;------ workbench
  227. AN_Workbench    equ $31000000
  228.  
  229. ;------ DiskCopy
  230. AN_DiskCopy     equ $32000000
  231.  
  232.     ENDIF
  233.     END
  234.