Search found 68 matches

by adimetrius
Tue Jan 05, 2021 12:38 pm
Forum: Component Pascal
Topic: A REAL bad program compiles well
Replies: 11
Views: 22612

A REAL bad program compiles well

Colleagues, PROCEDURE Really*; VAR s: SHORTREAL; r: REAL; BEGIN s := -0.4523987; r := -0.4523987; Log.Real(s); Log.Char(' '); Log.Real(r) END Really; (* output: -0.4523986876010895 -0.4523987 *) As far as I understand, -0.4523987 cannot be represented in the 4-byte format. In this case, I would rega...
by adimetrius
Sun Dec 13, 2020 1:10 pm
Forum: Common questions
Topic: source code
Replies: 13
Views: 22690

Re: source code

When you say, 'Platform-dependent code in bbcb', are you referring to the Host subsystem? If so, then it's there by desing. There's no appetite for moving anything out of Host into the non-Host subsystems.

Well, at least for the most part ))
by adimetrius
Sat Dec 12, 2020 10:21 pm
Forum: Common questions
Topic: source code
Replies: 13
Views: 22690

Re: source code

Well, there's also https://blackbox.oberon.org/extension/Sdl2. I haven't tried it on either Win or Lin, but it's been mentioned in conversations a lot.
by adimetrius
Sat Dec 12, 2020 8:19 pm
Forum: Common questions
Topic: source code
Replies: 13
Views: 22690

Re: source code

Since you mentioned Linux, I thought I'd mention there is a BlackBox for Linux - the linux build of the BlackBox Cross-Platform blackbox.oberon.org, there's an Eng page
by adimetrius
Sat Dec 12, 2020 5:00 pm
Forum: Common questions
Topic: source code
Replies: 13
Views: 22690

Re: source code

Check out Dev/Spec/StoreFileFormat.odc - it is, well, the Stores file format. Typically, an .odc with source code will contain a Documents.Document containing a TextViews.View referencing a TextModels.Model. Each of these is externalized in Documents.StdDocument.Externalize, TextViews.StdView.Extern...
by adimetrius
Wed Dec 02, 2020 8:22 pm
Forum: Hershel
Topic: Hershel 64-bit compiler
Replies: 22
Views: 64457

Re: Hershel 64-bit compiler

Fixup link address have specific format. If it positive, it it offset to code segment (0 < link < codeSize). If it negative, its negation is offset to meta segment (0 < -link < metaSize) and then to desc segment (metaSize <= -link < metaSize + descSize). Proxy segment can be added to this fix fixup...
by adimetrius
Wed Dec 02, 2020 8:18 pm
Forum: Hershel
Topic: Hershel 64-bit compiler
Replies: 22
Views: 64457

Re: Hershel 64-bit compiler

Proxy tables may be merged into one ELF GOT/GOT-PLT table with different protection. I really really don't want to mess with GOT-PLT, here's why: inside BB, we can do everything without these facilities. Looks to me like we could do without them even in ELFs. Why mess with them then? Keep it as sim...
by adimetrius
Wed Dec 02, 2020 8:09 pm
Forum: Hershel
Topic: Hershel 64-bit compiler
Replies: 22
Views: 64457

Re: Hershel 64-bit compiler

Code fixups (fixups with type "relative") may be still needed for static linking to merge same OCF segments of multiple modules into one ELF segment... Hard-coded code offsets into proxy table may require a lot of ELF segments or mixing code with data. You're exactly right; here are my co...
by adimetrius
Wed Dec 02, 2020 7:43 pm
Forum: Hershel
Topic: Hershel 64-bit compiler
Replies: 22
Views: 64457

Re: Hershel 64-bit compiler

It is better to set high bit of CPU field to indicate 64 bit module or something similar. 64 bit modules can be also used by aarch64, PowerPC, MIPS etc.. Various module tools (loaders, linkers, decoders) can work without knowledge of instruction set. Well, at this moment, it essentially means a new...
by adimetrius
Wed Dec 02, 2020 7:28 pm
Forum: Hershel
Topic: Hershel 64-bit compiler
Replies: 22
Views: 64457

Re: Hershel 64-bit compiler

Check out the dev branch. After several requests Ivan and I have decided that the master branch is to hold the most recent working version, while dev can be used for intermediary commits, including those that break working funcitonality or may not even be fully compilable. I've just checked: https:/...