assert.s 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. .data
  2. .xdef __assertion_failed
  3. .even
  4. __assertion_failed:
  5. link.w %a6,#-1044
  6. move.l 0xC8,%a2
  7. move.w 16(%a6),(%sp)
  8. move.l 12(%a6),-(%sp)
  9. move.l 8(%a6),-(%sp)
  10. pea .L__assert_fmt
  11. lea -1000(%a6),%a4
  12. move.l %a4,-(%sp)
  13. move.l 332(%a2),%a0
  14. jsr (%a0)
  15. move.l 188(%a2),%a0
  16. clr.l %d0
  17. move.b 2(%a0),%d0
  18. swap %d0
  19. move.b 3(%a0),%d0
  20. add.l #0xFFF5FFF1,%d0
  21. move.l %d0,(%sp)
  22. move.l #0xA000A,-(%sp)
  23. move.l 176(%a2),%a0
  24. jsr (%a0)
  25. pea .L__assert_ttl
  26. move.w #0x1058,-(%sp)
  27. move.l %a0,-(%sp)
  28. pea -1042(%a6)
  29. move.l 120(%a2),%a0
  30. jsr (%a0)
  31. move.l 4(%a2),%a0
  32. jsr (%a0)
  33. clr.w 4(%sp)
  34. move.l 76(%a2),%a0
  35. jsr (%a0)
  36. move.l %a4,4(%sp)
  37. move.l 148(%a2),%a0
  38. jsr (%a0)
  39. move.l #0x10008,4(%sp)
  40. move.l 212(%a2),%a0
  41. jsr (%a0)
  42. .L__assert_wkey:
  43. move.l 324(%a2),%a0
  44. jsr (%a0)
  45. cmp.w #13,%d0
  46. jbne .L__assert_wkey
  47. move.l 44(%a2),%a0
  48. jsr (%a0)
  49. movea.l __save__sp__:l,%a7
  50. rts
  51. .L__assert_ttl:
  52. .ascii "ASSERTION FAILED"
  53. .word 0
  54. .L__assert_fmt:
  55. .byte 10
  56. .ascii " Condition: %s"
  57. .byte 10,10
  58. .ascii " File: %s Line: %d"
  59. .word 0