README 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. Oberon Microsystems BlackBox Component Builder (http://www.oberon.ch/)
  2. Port for OpenBSD/i386
  3. Some significant parts taken from OpenBUGS (http://www.openbugs.info/)
  4. How to build:
  5. compile loader executable (BlackBox itself and simple interpreter):
  6. libBB*.so must be present (can be built from Windows)
  7. cd c; make
  8. compile self:
  9. cd BlackBox; ./clean; ./build-lindev; ./build
  10. Files:
  11. original:
  12. BlackBox:
  13. Dev/Mod/*
  14. all except ElfLinker16
  15. Dev/Rsrc/*
  16. Docu/BB-License.odc
  17. Docu/BB-Licensing-Policy.odc
  18. Docu/BB-Open-Source-License.odc
  19. Obx/*
  20. Std/*
  21. System/Mod/
  22. all except Console
  23. System/Rsrc/*
  24. Text/*
  25. OpenBUGS:
  26. Dev/Mod/ElfLinker16.odc
  27. Dev/Docu/ElfLinker.odc
  28. System/Mod/Console.odc
  29. Docu/OpenBUGS-License.odc
  30. http://forum.oberoncore.ru/viewtopic.php?f=34&t=1159&sid=3e82517160caa46c64331178c1b61e95:
  31. Lin/Mod/Kernel_so_init.odc
  32. modified:
  33. Lin/Mod/Obsd.Kernel.odc:
  34. 1.6-rc6 System/Mod/Kernel.odc, OpenBUGS Lin/Mod/linKernel.odc:
  35. OpenBSD specific:
  36. Memory management rewritten (based on mmap)
  37. Kernel.TrapHandler
  38. OpenBSD sigcontext-specific
  39. Kernel.Time
  40. CLOCKS_PER_SEC related
  41. Kernel.InitModule
  42. mprotect call added
  43. Kernel.InstallSignals:
  44. use alternate stack on which signals are to be processed (to catch stack overflow)
  45. do not install signal handler for SIGTHR (when executable linked with -pthread)
  46. Kernel.cmdLine support:
  47. Kernel.INIT (SetCmdLine2)
  48. Lin/Mod/Obsd.linHostFiles.odc:
  49. OpenBUGS Lin/Mod/linHostFiles.odc:
  50. OpenBSD-specific:
  51. size_t
  52. __xstat -> stat
  53. Kernel.cmdLine support:
  54. str := "" -> str := Kernel.cmdLine$
  55. Lin/Mod/Obsd.Console.odc:
  56. OpenBUGS Lin/Mod/Console.odc:
  57. stdin -> SYSTEM.ADR(__sF[0])
  58. Lin/Mod/Obsd.Libc.txt:
  59. OpenBUGS Lin/Mod/Libc.odc:
  60. OpenBSD-specific
  61. Lin/Mod/Obsd.Dates.odc:
  62. HostDates, from http://oberoncore.ru/:
  63. OpenBSD-specific
  64. Lindev/Mod
  65. CP*
  66. BlackBox 1.6-rc6 Dev CP* modified to not depend on Dates, Texts etc.
  67. Compiler.odc:
  68. modified original BlackBox Dev/Mod/Compiler.odc
  69. ElfLinker16.odc:
  70. modified OpenBUGS Dev/Mod/ElfLinker16.odc
  71. new:
  72. Cons/Mod
  73. Interp.odc: console interpreter
  74. Compiler.odc: console interface to Dev compiler
  75. libBB.so: compiled and linked OpenBSD shared library to run BlackBox
  76. libBB0.so: compiled and linked OpenBSD shared library to run simple development interpreter
  77. Views.odc: minimal Views implementation required to compile StdInterpreter
  78. StdLog.odc: alternative StdLog implementation to not depend on GUI
  79. HostFonts.odc, HostDialog.odc, HostWindows.odc: simple Hosts implementation
  80. Notes:
  81. Lindev:
  82. I will not remove Lindev because I can not link .so library based on ConsInterp and Dev
  83. Kernel_so_init.SetKernelBaseStack:
  84. required only in case of .so shared library dynamic loading
  85. (at run-time via dlopen, not on link-time)
  86. A. V. Shiryaev, 2012