home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 364b.lha / PCQ_v1.1 / Runtime / System / Intuition.asm < prev    next >
Encoding:
Assembly Source File  |  1990-04-08  |  9.8 KB  |  565 lines

  1.  
  2. *    Intuition.asm (of PCQ Pascal runtime library)
  3. *    Copyright (c) 1989 Patrick Quaid
  4.  
  5. *    This simply implements the intuition routines.  Again you don't
  6. *    need to make a new pointer to the library, since we just use the
  7. *    one created by the start up code.
  8.  
  9.     XREF    _p%IntuitionBase
  10.  
  11.     section    one
  12.  
  13.     XDEF    _AddGadget
  14. _AddGadget
  15.     move.l    12(sp),a0
  16.     move.l    8(sp),a1
  17.     move.l    4(sp),d0
  18.     move.l    _p%IntuitionBase,a6
  19.     jmp    _LVOAddGadget(a6)
  20.  
  21.     XDEF    _AllocRemember
  22. _AllocRemember
  23.     move.l    12(sp),a0
  24.     move.l    8(sp),d0
  25.     move.l    4(sp),d1
  26.     move.l    _p%IntuitionBase,a6
  27.     jmp    _LVOAllocRemember(a6)
  28.  
  29.     XDEF    _AutoRequest
  30. _AutoRequest
  31.     movem.l    d2/d3/a2/a3,-(sp)
  32.     move.l    48(sp),a0
  33.     move.l    44(sp),a1
  34.     move.l    40(sp),a2
  35.     move.l    36(sp),a3
  36.     move.l    32(sp),d0
  37.     move.l    28(sp),d1
  38.     move.l    24(sp),d2
  39.     move.l    20(sp),d3
  40.     move.l    _p%IntuitionBase,a6
  41.     jsr    _LVOAutoRequest(a6)
  42.     movem.l    (sp)+,d2/d3/a2/a3
  43.     rts
  44.  
  45.     XDEF    _BeginRefresh
  46. _BeginRefresh
  47.     move.l    4(sp),a0
  48.     move.l    _p%IntuitionBase,a6
  49.     jmp    _LVOBeginRefresh(a6)
  50.  
  51.     XDEF    _BuildSysRequest
  52. _BuildSysRequest
  53.     movem.l    a2/a3/d2,-(sp)
  54.     move.l    40(sp),a0
  55.     move.l    36(sp),a1
  56.     move.l    32(sp),a2
  57.     move.l    28(sp),a3
  58.     move.l    24(sp),d0
  59.     move.l    20(sp),d1
  60.     move.l    16(sp),d2
  61.     move.l    _p%IntuitionBase,a6
  62.     jsr    _LVOBuildSysRequest(a6)
  63.     movem.l    (sp)+,a2/a3/d2
  64.     rts
  65.  
  66.     XDEF    _ClearDMRequest
  67. _ClearDMRequest
  68.     move.l    4(sp),a0
  69.     move.l    _p%IntuitionBase,a6
  70.     jmp    _LVOClearDMRequest(a6)
  71.  
  72.     XDEF    _ClearMenuStrip
  73. _ClearMenuStrip
  74.     move.l    4(sp),a0
  75.     move.l    _p%IntuitionBase,a6
  76.     jmp    _LVOClearMenuStrip(a6)
  77.  
  78.     XDEF    _ClearPointer
  79. _ClearPointer
  80.     move.l    4(sp),a0
  81.     move.l    _p%IntuitionBase,a6
  82.     jmp    _LVOClearPointer(a6)
  83.  
  84.     XDEF    _CloseScreen
  85. _CloseScreen
  86.     move.l    4(sp),a0
  87.     move.l    _p%IntuitionBase,a6
  88.     jmp    _LVOCloseScreen(a6)
  89.  
  90.     XDEF    _CloseWindow
  91. _CloseWindow
  92.     move.l    4(sp),a0
  93.     move.l    _p%IntuitionBase,a6
  94.     jsr    _LVOCloseWindow(a6)
  95.     rts
  96.  
  97.     XDEF    _CloseWorkBench
  98. _CloseWorkBench
  99.     move.l    _p%IntuitionBase,a6
  100.     jmp    _LVOCloseWorkBench(a6)
  101.  
  102.     XDEF    _CurrentTime
  103. _CurrentTime
  104.     move.l    8(sp),d0
  105.     move.l    4(sp),d1
  106.     move.l    _p%IntuitionBase,a6
  107.     jsr    _LVOCurrentTime(a6)
  108.     rts
  109.  
  110.     XDEF    _DisplayAlert
  111. _DisplayAlert
  112.     move.l    12(sp),d0
  113.     move.l    8(sp),a0
  114.     move.l    4(sp),d1
  115.     move.l    _p%IntuitionBase,a6
  116.     jmp    _LVODisplayAlert(a6)
  117.  
  118.     XDEF    _DisplayBeep
  119. _DisplayBeep
  120.     move.l    4(sp),a0
  121.     move.l    _p%IntuitionBase,a6
  122.     jmp    _LVODisplayBeep(a6)
  123.  
  124.     XDEF    _DoubleClick
  125. _DoubleClick
  126.     movem.l    d2/d3,-(sp)
  127.     move.l    24(sp),d0
  128.     move.l    20(sp),d1
  129.     move.l    16(sp),d2
  130.     move.l    12(sp),d3
  131.     move.l    _p%IntuitionBase,a6
  132.     jsr    _LVODoubleClick(a6)
  133.     movem.l    (sp)+,d2/d3
  134.     tst.b    d0
  135.     sne    d0
  136.     rts
  137.  
  138.     XDEF    _DrawBorder
  139. _DrawBorder
  140.     move.l    16(sp),a0
  141.     move.l    12(sp),a1
  142.     move.l    8(sp),d0
  143.     move.l    4(sp),d1
  144.     move.l    _p%IntuitionBase,a6
  145.     jmp    _LVODrawBorder(a6)
  146.  
  147.     XDEF    _DrawImage
  148. _DrawImage
  149.     move.l    16(sp),a0
  150.     move.l    12(sp),a1
  151.     move.l    8(sp),d0
  152.     move.l    4(sp),d1
  153.     move.l    _p%IntuitionBase,a6
  154.     jmp    _LVODrawImage(a6)
  155.  
  156.     XDEF    _EndRefresh
  157. _EndRefresh
  158.     move.l    6(sp),a0
  159.     move.l    4(sp),d0
  160.     move.l    _p%IntuitionBase,a6
  161.     jmp    _LVOEndRefresh(a6)
  162.  
  163.     XDEF    _EndRequest
  164. _EndRequest
  165.     move.l    8(sp),a0
  166.     move.l    4(sp),a1
  167.     move.l    _p%IntuitionBase,a6
  168.     jmp    _LVOEndRequest(a6)
  169.  
  170.     XDEF    _FreeRemember
  171. _FreeRemember
  172.     move.l    6(sp),a0
  173.     move.l    4(sp),d0
  174.     move.l    _p%IntuitionBase,a6
  175.     jmp    _LVOFreeRemember(a6)
  176.  
  177.     XDEF    _FreeSysRequest
  178. _FreeSysRequest
  179.     move.l    4(sp),a0
  180.     move.l    _p%IntuitionBase,a6
  181.     jmp    _LVOFreeSysRequest(a6)
  182.  
  183.     XDEF    _GetDefPrefs
  184. _GetDefPrefs
  185.     move.l    8(sp),a0
  186.     move.l    4(sp),d0
  187.     move.l    _p%IntuitionBase,a6
  188.     jmp    _LVOGetDefPrefs(a6)
  189.  
  190.     XDEF    _GetPrefs
  191. _GetPrefs
  192.     move.l    8(sp),a0
  193.     move.l    4(sp),d0
  194.     move.l    _p%IntuitionBase,a6
  195.     jmp    _LVOGetPrefs(a6)
  196.  
  197.     XDEF    _InitRequester
  198. _InitRequester
  199.     move.l    4(sp),a0
  200.     move.l    _p%IntuitionBase,a6
  201.     jmp    _LVOInitRequester(a6)
  202.  
  203.     XDEF    _IntuiTextLength
  204. _IntuiTextLength
  205.     move.l    4(sp),a0
  206.     move.l    _p%IntuitionBase,a6
  207.     jmp    _LVOIntuiTextLength(a6)
  208.  
  209.     XDEF    _ItemAddress
  210. _ItemAddress
  211.     move.l    8(sp),a0
  212.     move.l    4(sp),d0
  213.     move.l    _p%IntuitionBase,a6
  214.     jmp    _LVOItemAddress(a6)
  215.  
  216.     XDEF    _MakeScreen
  217. _MakeScreen
  218.     move.l    4(sp),a0
  219.     move.l    _p%IntuitionBase,a6
  220.     jmp    _LVOMakeScreen(a6)
  221.  
  222.     XDEF    _ModifyIDCMP
  223. _ModifyIDCMP
  224.     move.l    8(sp),a0
  225.     move.l    4(sp),d0
  226.     move.l    _p%IntuitionBase,a6
  227.     jmp    _LVOModifyIDCMP(a6)
  228.  
  229.     XDEF    _ModifyProp
  230. _ModifyProp
  231.     movem.l    a2/d2/d3/d4,-(sp)
  232.     move.l    48(sp),a0
  233.     move.l    44(sp),a1
  234.     move.l    40(sp),a2
  235.     move.l    36(sp),d0
  236.     move.l    32(sp),d1
  237.     move.l    28(sp),d2
  238.     move.l    24(sp),d3
  239.     move.l    20(sp),d4
  240.     move.l    _p%IntuitionBase,a6
  241.     jsr    _LVOModifyProp(a6)
  242.     movem.l    (sp)+,a2/d2/d3/d4
  243.     rts
  244.  
  245.     XDEF    _MoveScreen
  246. _MoveScreen
  247.     move.l    12(sp),a0
  248.     move.l    8(sp),d0
  249.     move.l    4(sp),d1
  250.     move.l    _p%IntuitionBase,a6
  251.     jsr    _LVOMoveScreen(a6)
  252.     rts
  253.  
  254.     XDEF    _MoveWindow
  255. _MoveWindow
  256.     move.l    12(sp),a0
  257.     move.l    8(sp),d0
  258.     move.l    4(sp),d1
  259.     move.l    _p%IntuitionBase,a6
  260.     jsr    _LVOMoveWindow(a6)
  261.     rts
  262.  
  263.     XDEF    _OffGadget
  264. _OffGadget
  265.     move.l    12(sp),a0
  266.     move.l    8(sp),a1
  267.     move.l    4(sp),a2
  268.     move.l    _p%IntuitionBase,a6
  269.     jmp    _LVOOffGadget(a6)
  270.  
  271.     XDEF    _OffMenu
  272. _OffMenu
  273.     move.l    8(sp),a0
  274.     move.l    4(sp),d0
  275.     move.l    _p%IntuitionBase,a6
  276.     jmp    _LVOOffMenu(a6)
  277.  
  278.     XDEF    _OnGadget
  279. _OnGadget
  280.     move.l    a2,-(sp)
  281.     move.l    16(sp),a0
  282.     move.l    12(sp),a1
  283.     move.l    8(sp),a2
  284.     move.l    _p%IntuitionBase,a6
  285.     jsr    _LVOOnGadget(a6)
  286.     move.l    (sp)+,a2
  287.     rts
  288.  
  289.     XDEF    _OnMenu
  290. _OnMenu
  291.     move.l    8(sp),a0
  292.     move.l    4(sp),d0
  293.     move.l    _p%IntuitionBase,a6
  294.     jmp    _LVOOnMenu(a6)
  295.  
  296.     XDEF    _OpenScreen
  297. _OpenScreen
  298.     move.l    4(sp),a0
  299.     move.l    _p%IntuitionBase,a6
  300.     jsr    _LVOOpenScreen(a6)
  301.     rts
  302.  
  303.     XDEF    _OpenWindow
  304. _OpenWindow
  305.     move.l    4(sp),a0
  306.     move.l    _p%IntuitionBase,a6
  307.     jsr    _LVOOpenWindow(a6)
  308.     rts
  309.  
  310.     XDEF    _OpenWorkBench
  311. _OpenWorkBench
  312.     move.l    _p%IntuitionBase,a6
  313.     jmp    _LVOOpenWorkBench(a6)
  314.  
  315.     XDEF    _PrintIText
  316. _PrintIText
  317.     move.l    16(sp),a0
  318.     move.l    12(sp),a1
  319.     move.l    8(sp),d0
  320.     move.l    4(sp),d1
  321.     move.l    _p%IntuitionBase,a6
  322.     jmp    _LVOPrintIText(a6)
  323.  
  324.     XDEF    _RefreshGadgets
  325. _RefreshGadgets
  326.     move.l    a2,-(sp)
  327.     move.l    16(sp),a0
  328.     move.l    12(sp),a1
  329.     move.l    8(sp),a2
  330.     move.l    _p%IntuitionBase,a6
  331.     jsr    _LVORefreshGadgets(a6)
  332.     move.l    (sp)+,a2
  333.     rts
  334.  
  335.     XDEF    _RemakeDisplay
  336. _RemakeDisplay
  337.     move.l    _p%IntuitionBase,a6
  338.     jmp    _LVORemakeDisplay(a6)
  339.  
  340.     XDEF    _RemoveGadget
  341. _RemoveGadget
  342.     move.l    8(sp),a0
  343.     move.l    4(sp),a1
  344.     move.l    _p%IntuitionBase,a6
  345.     jmp    _LVORemoveGadget(a6)
  346.  
  347.     XDEF    _ReportMouse
  348. _ReportMouse
  349.     move.l    6(sp),a0
  350.     move.l    4(sp),d0
  351.     move.l    _p%IntuitionBase,a6
  352.     jmp    _LVOReportMouse(a6)
  353.  
  354.     XDEF    _Request
  355. _Request
  356.     move.l    8(sp),a0
  357.     move.l    4(sp),a1
  358.     move.l    _p%IntuitionBase,a6
  359.     jmp    _LVORequest(a6)
  360.  
  361.     XDEF    _RethinkDisplay
  362. _RethinkDisplay
  363.     move.l    _p%IntuitionBase,a6
  364.     jmp    _LVORethinkDisplay(a6)
  365.  
  366.     XDEF    _ScreenToBack
  367. _ScreenToBack
  368.     move.l    4(sp),a0
  369.     move.l    _p%IntuitionBase,a6
  370.     jsr    _LVOScreenToBack(a6)
  371.     rts
  372.  
  373.     XDEF    _ScreenToFront
  374. _ScreenToFront
  375.     move.l    4(sp),a0
  376.     move.l    _p%IntuitionBase,a6
  377.     jsr    _LVOScreenToFront(a6)
  378.     rts
  379.  
  380.     XDEF    _SetDMRequest
  381. _SetDMRequest
  382.     move.l    8(sp),a0
  383.     move.l    4(sp),a1
  384.     move.l    _p%IntuitionBase,a6
  385.     jmp    _LVOSetDMRequest(a6)
  386.  
  387.     XDEF    _SetMenuStrip
  388. _SetMenuStrip
  389.     move.l    8(sp),a0
  390.     move.l    4(sp),a1
  391.     move.l    _p%IntuitionBase,a6
  392.     jmp    _LVOSetMenuStrip(a6)
  393.  
  394.     XDEF    _SetPointer
  395. _SetPointer
  396.     movem.l    d2/d3,-(sp)
  397.     move.l    32(sp),a0
  398.     move.l    28(sp),a1
  399.     move.l    24(sp),d0
  400.     move.l    20(sp),d1
  401.     move.l    16(sp),d2
  402.     move.l    12(sp),d3
  403.     move.l    _p%IntuitionBase,a6
  404.     jsr    _LVOSetPointer(a6)
  405.     movem.l    (sp)+,d2/d3
  406.     rts
  407.  
  408.     XDEF    _SetWindowTitles
  409. _SetWindowTitles
  410.     move.l    a2,-(sp)
  411.     move.l    16(sp),a0
  412.     move.l    12(sp),a1
  413.     move.l    8(sp),a2
  414.     move.l    _p%IntuitionBase,a6
  415.     jsr    _LVOSetWindowTitles(a6)
  416.     move.l    (sp)+,a2
  417.     rts
  418.  
  419.     XDEF    _ShowTitle
  420. _ShowTitle
  421.     move.l    6(sp),a0
  422.     move.w    4(sp),d0
  423.     and.l    #$FF,d0
  424.     move.l    _p%IntuitionBase,a6
  425.     jsr    _LVOShowTitle(a6)
  426.     rts
  427.  
  428.     XDEF    _SizeWindow
  429. _SizeWindow
  430.     move.l    12(sp),a0
  431.     move.l    8(sp),d0
  432.     move.l    4(sp),d1
  433.     move.l    _p%IntuitionBase,a6
  434.     jsr    _LVOSizeWindow(a6)
  435.     rts
  436.  
  437.     XDEF    _ViewAddress
  438. _ViewAddress
  439.     move.l    _p%IntuitionBase,a6
  440.     jmp    _LVOViewAddress(a6)
  441.  
  442.     XDEF    _ViewPortAddress
  443. _ViewPortAddress
  444.     move.l    4(sp),a0
  445.     move.l    _p%IntuitionBase,a6
  446.     jsr    _LVOViewPortAddress(a6)
  447.     rts
  448.  
  449.     XDEF    _WBenchToBack
  450. _WBenchToBack
  451.     move.l    _p%IntuitionBase,a6
  452.     jsr    _LVOWBenchToBack(a6)
  453.     rts
  454.  
  455.     XDEF    _WBenchToFront
  456. _WBenchToFront
  457.     move.l    _p%IntuitionBase,a6
  458.     jsr    _LVOWBenchToFront(a6)
  459.     rts
  460.  
  461.     XDEF    _WindowLimits
  462. _WindowLimits
  463.     movem.l    d2/d3,-(sp)
  464.     move.l    28(sp),a0
  465.     move.l    24(sp),d0
  466.     move.l    20(sp),d1
  467.     move.l    16(sp),d2
  468.     move.l    12(sp),d3
  469.     move.l    _p%IntuitionBase,a6
  470.     jsr    _LVOWindowLimits(a6)
  471.     movem.l    (sp)+,d2/d3
  472.     rts
  473.  
  474.     XDEF    _WindowToBack
  475. _WindowToBack
  476.     move.l    4(sp),a0
  477.     move.l    _p%IntuitionBase,a6
  478.     jsr    _LVOWindowToBack(a6)
  479.     rts
  480.  
  481.     XDEF    _WindowToFront
  482. _WindowToFront
  483.     move.l    4(sp),a0
  484.     move.l    _p%IntuitionBase,a6
  485.     jsr    _LVOWindowToFront(a6)
  486.     rts
  487.  
  488.  
  489. *    XREF    _LVONewModifyProp
  490. *    XREF    _LVOActivateGadget
  491. *    XREF    _LVORefreshWindowFrame
  492. *    XREF    _LVOActivateWindow
  493. *    XREF    _LVORemoveGList
  494. *    XREF    _LVOAddGList
  495. *    XREF    _LVORefreshGList
  496. *    XREF    _LVOGetScreenData
  497. *    XREF    _LVOUnlockIBase
  498. *    XREF    _LVOLockIBase
  499.     XREF    _LVOFreeRemember
  500. *    XREF    _LVOAlohaWorkbench
  501.     XREF    _LVOAllocRemember
  502.     XREF    _LVORethinkDisplay
  503.     XREF    _LVORemakeDisplay
  504.     XREF    _LVOMakeScreen
  505.     XREF    _LVOFreeSysRequest
  506.     XREF    _LVOEndRefresh
  507.     XREF    _LVOBuildSysRequest
  508.     XREF    _LVOBeginRefresh
  509.     XREF    _LVOAutoRequest
  510.     XREF    _LVOWBenchToFront
  511.     XREF    _LVOWBenchToBack
  512.     XREF    _LVOIntuiTextLength
  513. *    XREF    _LVOSetPrefs
  514.     XREF    _LVOWindowLimits
  515.     XREF    _LVOWindowToFront
  516.     XREF    _LVOWindowToBack
  517.     XREF    _LVOViewPortAddress
  518.     XREF    _LVOViewAddress
  519.     XREF    _LVOSizeWindow
  520.     XREF    _LVOShowTitle
  521.     XREF    _LVOSetWindowTitles
  522.     XREF    _LVOSetPointer
  523.     XREF    _LVOSetMenuStrip
  524.     XREF    _LVOSetDMRequest
  525.     XREF    _LVOScreenToFront
  526.     XREF    _LVOScreenToBack
  527.     XREF    _LVORequest
  528.     XREF    _LVOReportMouse
  529.     XREF    _LVORemoveGadget
  530.     XREF    _LVORefreshGadgets
  531.     XREF    _LVOPrintIText
  532.     XREF    _LVOOpenWorkBench
  533.     XREF    _LVOOpenWindow
  534.     XREF    _LVOOpenScreen
  535.     XREF    _LVOOnMenu
  536.     XREF    _LVOOnGadget
  537.     XREF    _LVOOffMenu
  538.     XREF    _LVOOffGadget
  539.     XREF    _LVOMoveWindow
  540.     XREF    _LVOMoveScreen
  541.     XREF    _LVOModifyProp
  542.     XREF    _LVOModifyIDCMP
  543.     XREF    _LVOItemAddress
  544.     XREF    _LVOInitRequester
  545.     XREF    _LVOGetPrefs
  546.     XREF    _LVOGetDefPrefs
  547.     XREF    _LVOEndRequest
  548.     XREF    _LVODrawImage
  549.     XREF    _LVODrawBorder
  550.     XREF    _LVODoubleClick
  551.     XREF    _LVODisplayBeep
  552.     XREF    _LVODisplayAlert
  553.     XREF    _LVOCurrentTime
  554.     XREF    _LVOCloseWorkBench
  555.     XREF    _LVOCloseWindow
  556.     XREF    _LVOCloseScreen
  557.     XREF    _LVOClearPointer
  558.     XREF    _LVOClearMenuStrip
  559.     XREF    _LVOClearDMRequest
  560.     XREF    _LVOAddGadget
  561. *    XREF    _LVOIntuition
  562. *    XREF    _LVOOpenIntuition
  563.  
  564.     end
  565.