home *** CD-ROM | disk | FTP | other *** search
/ CBM Funet Archive / cbm-funet-archive-2003.iso / cbm / crossplatform / emulators / MacOS / mac64-04.hqx / MAC64-04.SEA / C64 / SOURCE / Modes68K.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-03-27  |  995 b   |  55 lines  |  [TEXT/KAHL]

  1. #DEFINE iMMEDIATEbYTE(Z)\
  2. bYTEaT(Rpc,Z)\
  3. andi.l#0Xff,Z
  4.  
  5. #DEFINE zEROpAGEaDDR(Z)\
  6. bYTEaT(Rpc,Z)\
  7. andi.l#0XFF,Z
  8.  
  9. /*dON'T USE ANY OF THESE WITH "Z" BEING d0!*/
  10.  
  11. #DEFINE zEROpAGExaDDR(Z)\
  12. bYTEaT(Rpc,Z)\
  13. add.bRx,Z\
  14. andi.l#0XFF,Z
  15. /*(255&(X+bYTEaT(PC)))*/
  16.  
  17. #DEFINE zEROpAGEyaDDR(Z)\
  18. bYTEaT(Rpc,Z)\
  19. add.bRy,Z\
  20. andi.l#0Xff,Z
  21. /*(255&(Y+bYTEaT(PC)))*/
  22.  
  23. #DEFINE iNDIRECTxaDDR(Z)\
  24. bYTEaT(Rpc,Z)\
  25. add.bRx,Z\
  26. andi.l#0XFF,Z\
  27. wORDaT(Z,Z)
  28. /*(wORDaT(255&(bYTEaT(PC)+X)))*/
  29.  
  30. #DEFINE iNDIRECTyaDDR(Z)\
  31. bYTEaT(Rpc,Z)\
  32. andi.l#0Xff,Z\
  33. wORDaT(Z,Z)\
  34. andi.w#0Xff,Ry\
  35. add.wRy,Z
  36. /*(wORDaT(bYTEaT(PC))+Y)*/
  37.  
  38. #DEFINE aBSOLUTEaDDR(Z)\
  39. clr.lZ\
  40. wORDaT(Rpc,Z)
  41.  
  42. #DEFINE aBSOLUTExaDDR(Z)\
  43. clr.lZ\
  44. wORDaT(Rpc,Z)\
  45. andi.w#0Xff,Rx\
  46. add.wRx,Z
  47. /*(wORDaT(PC)+X)*/
  48.  
  49. #DEFINE aBSOLUTEyaDDR(Z)\
  50. clr.lZ\
  51. wORDaT(Rpc,Z)\
  52. andi.w#0Xff,Ry\
  53. add.wRy,Z
  54. /*(wORDaT(PC)+Y)*/
  55.