Tridim - the 3D modelling program

Anything QL Software or Programming Related.
User avatar
tofro
QL Wafer Drive
Posts: 1372
Joined: Sun Feb 13, 2011 10:53 pm
Location: SW Germany

Re: Tridim - the 3D modelling program

Postby tofro » Thu Feb 22, 2018 11:04 am

Turbo is probably very close to SupecrCharge when it is creating threaded code, which is more a list of to-be-called subroutines than machine code - Turbo has the additional option to optimize for speed ("FAST") which is in the manuals described as "assembles 680008 machine code"), and I would guess if you use that you'd be ending up with a fundamentally different program than what SuperCharge used to produce.

Tobias


RWAP
RWAP Master
Posts: 2450
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Tridim - the 3D modelling program

Postby RWAP » Thu Feb 22, 2018 12:24 pm

Derek_Stewart wrote:Hi Martin,

I have compared a Supercharge and Turbo compiled programme, the SuperBasic commands look to appear at the same point. There maybe be some sort of common data structure between the two. Since Turbo is supposed to be an enhanced Supercharge Compiler.

I was reading the Turbo manuals when I was in disposed, I will resume this and get a better insight into the way Turbo is structured.

I do not have any Supercharge manuals except for the Updates in the DP Collection, do you have the Surpercharge that I could scan?


In the longer term it would make sense to get Simon Goodwin involved in this :)

I should have a Supercharge manual somewhere - although not sure how easy it will be to scan in as it will be on DP's classic coloured paper!


User avatar
pjw
Gold Card
Posts: 379
Joined: Fri Jul 11, 2014 8:44 am
Location: Norway

Re: Tridim - the 3D modelling program

Postby pjw » Thu Feb 22, 2018 5:38 pm

Simon Goodwin wrote a detailed thesis on SuperCharge. IIRC, SC was his BSc project. I had a copy once but I cant find it anywhere just now. However, the Turbo source code is available. Wouldnt that be a good place to start?


Per
For every complex problem there is an answer that is clear, simple, and wrong.
- H. L. Mencken
Derek_Stewart
QL Wafer Drive
Posts: 1039
Joined: Mon Dec 20, 2010 11:40 am
Location: Runcorn, Cheshire, UK

Re: Tridim - the 3D modelling program

Postby Derek_Stewart » Thu Feb 22, 2018 5:50 pm

RWAP wrote:I should have a Supercharge manual somewhere - although not sure how easy it will be to scan in as it will be on DP's classic coloured paper!


Hi Rich,

The coloured paper is no problem in modern scanning software. The colour can be contrasted out with the software controls.

If you want send it to me I can scan easily.


Regards,

Derek
Derek_Stewart
QL Wafer Drive
Posts: 1039
Joined: Mon Dec 20, 2010 11:40 am
Location: Runcorn, Cheshire, UK

Re: Tridim - the 3D modelling program

Postby Derek_Stewart » Thu Feb 22, 2018 6:01 pm

pjw wrote:Simon Goodwin wrote a detailed thesis on SuperCharge. IIRC, SC was his BSc project. I had a copy once but I cant find it anywhere just now. However, the Turbo source code is available. Wouldnt that be a good place to start?


Hi Per,

Simon's Thesis is included in the Turbo Manuals.

I was trying disassemble the Turbo compiled code to produce the intermediate code. Then work the Intermediate code to S*Basic output.


Regards,

Derek
User avatar
pjw
Gold Card
Posts: 379
Joined: Fri Jul 11, 2014 8:44 am
Location: Norway

Re: Tridim - the 3D modelling program

Postby pjw » Thu Feb 22, 2018 8:02 pm

Hi Derek,

I understand your intention. All I meant was that to unpick something, the code describing how it was put together would be a useful key. After all its not like unscrambling eggs, where knowing how the egg was scrambled wont help very much ;)
For my part, I much rather like to see how Q-Liberator does its stuff. Not to unravel the old program, but to update QLib at last! But thats a different topic..


Per
For every complex problem there is an answer that is clear, simple, and wrong.
- H. L. Mencken
Martin_Head
Gold Card
Posts: 298
Joined: Tue Dec 17, 2013 1:17 pm

Re: Tridim - the 3D modelling program

Postby Martin_Head » Fri Feb 23, 2018 11:15 am

Derek_Stewart wrote:I have compared a Supercharge and Turbo compiled programme, the SuperBasic commands look to appear at the same point. There maybe be some sort of common data structure between the two. Since Turbo is supposed to be an enhanced Supercharge Compiler.

From my investigations, The list of SuperBASIC commands at the end of the program are not complete. They help a lot as they get called like a SuperBASIC extension would normally with a name table entry set up. The commands that are missing are things like FOR, IF, PRINT, INPUT ,PEEK, POKE, REPeat etc. (REPeat loops end up as GOTO's).

In front of the SuperBASIC commands is the 'coded' version of the SuperBASIC program, In front of that is the routines that the 'coded' version of the SuperBASIC programs calls. And in front of that is the code that actually runs everything.

I know I've put it in reverse order, but you get the idea.

Martin


Martin_Head
Gold Card
Posts: 298
Joined: Tue Dec 17, 2013 1:17 pm

Re: Tridim - the 3D modelling program

Postby Martin_Head » Fri Feb 23, 2018 1:56 pm

Here is a copy of my disassembly of Tridim that you could use to compare with Turbo files. It shows where I have identified various bits, and hand decompiled various parts of the coded version of the SuperBASIC program. Some of the comments I have made may be incorrect, as well as some of my hand decompiling. So I have also included a copy of the raw output of the decompiler program, so you can compare it with what's in the disassembly.

Martin
Attachments
Notes.zip
(138.23 KiB) Downloaded 22 times


bixio60
ROM Dongle
Posts: 26
Joined: Sun May 04, 2014 7:05 am

Re: Tridim - the 3D modelling program

Postby bixio60 » Sat Feb 24, 2018 12:19 pm

Martin_Head wrote:Here is a copy of my disassembly of Tridim that you could use to compare with Turbo files. It shows where I have identified various bits, and hand decompiled various parts of the coded version of the SuperBASIC program. Some of the comments I have made may be incorrect, as well as some of my hand decompiling. So I have also included a copy of the raw output of the decompiler program, so you can compare it with what's in the disassembly.

Martin


Martin , this is absolutely brilliant, I thought decompiling Super/Turbo program was basically impossible and you did it in one way or the other.
I am also (sometime) spend sometime with older program to de-assembler to make them working with modern SMSQ/E (I did some work with different CPM emulator :D ) but only in case the original code was assembler .

Can I ask you to have your disassembler to see how it works? Even if incomplete or need manual intervention could be source of inspiration, or even, by any chance, you wrote any documentation of how you did it.

Last but not least, let me take this opportunity to thank you for IpNet driver, I am using regurarly in my personal lan to connect to my home main file server (even from remote using VPN) :D

Regards

Fabrizio


Martin_Head
Gold Card
Posts: 298
Joined: Tue Dec 17, 2013 1:17 pm

Re: Tridim - the 3D modelling program

Postby Martin_Head » Mon Feb 26, 2018 10:24 am

bixio60 wrote:Can I ask you to have your disassembler to see how it works? Even if incomplete or need manual intervention could be source of inspiration, or even, by any chance, you wrote any documentation of how you did it.

Last but not least, let me take this opportunity to thank you for IpNet driver, I am using regurarly in my personal lan to connect to my home main file server (even from remote using VPN) :D

Regards

Fabrizio

I don't really want to post the decompiler here, because as it stands it can only deal with Tridim, and the documentation is almost nil. If you PM me an email address I will email you a copy.

Martin



Return to “Software & Programming”

Who is online

Users browsing this forum: No registered users and 1 guest