README 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. Wellcome to the MacOS port of FreePascal (FPC)
  2. ==============================================
  3. It is considered under construction, at the moment.
  4. Please note that compiling must be done on a platform
  5. supported by FPC, e g a PC. Then the generated assemble files
  6. is to be transfered to a Macintosh with MPW installed.
  7. For compiling with FPC, use it as for other operating systems
  8. and add these options:
  9. -Tmacos # target macos
  10. -dpowerpc
  11. -al # dont delete asm output
  12. -s # dont generate executable
  13. Note that at the moment, FPC yells about not supporting
  14. creating of executables at the platform, nevertheless
  15. it creates all asm files to produce an application on the Mac.
  16. Use MPW to assemble and link the output from FreePascal
  17. For PPCAsm, use options:
  18. -case on
  19. For PPCLink, use options
  20. -dead on
  21. -tocdataref off
  22. -m program_init
  23. Note on the compiler implementation
  24. ===================================
  25. Procedure pointers
  26. ------------------
  27. The entries in the transition vector is used as procedure pointers.
  28. That is the symbol xxx[DS].
  29. Global variables
  30. ----------------
  31. Currently all global variables are indirect, that is the entry in
  32. the TOC is always a pointer to data. (In the future small data items
  33. may be stored directly in the TOC, but I have not found out how this
  34. is supported by PPCLink.)
  35. Thus all references to globals are via a construct like:
  36. lwz rX, yyy[TC](r2) ;loads a pointer to a global into rX