Poster | Thread |
scabit
|  |
Building Opus Magellan sources ... Posted on 19-Dec-2012 14:07:18
| | [ #1 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| Hi,
I downloaded the newly available Dopus Magellan source code and set up an OS3.1 hard drive partition with SASC 6.58. Note - I am running this all on OS4 under UAE. In compiling the Magellan sources it seems there are some extra things necessary to make things build. First I found it necessary to add some assigns to my user-startup:
assign dopuscfg: sc:dopus5/config assign dopuslib: sc:dopus5/library assign dopusprog: sc:dopus5/program assign dopusmod: sc:dopus5/modules assign sas6: sc:
Then I discovered that I needed to add in the cybergraphix library headers. I downloaded the latest cybrgraphics developer kit from Aminet, which I think is 41.18. Then I found I needed the newicons developer header files as well, which I downloaded from Aminet.
With these all installed, I still get a few errors. For example, in compiling images.c I get an error saying ICONCTRLA_IsNewIcon undefined. I am guesing that I need different newicon libraries and headers. I also am having a problem making the lsprintf.asm file...I get an "error writing object file". The other .asm files seem to build properly.
I also know that there is a cybergraphics version 41.22 somewhere.
Does anyone know where the "newest" developer sources for these may be?
Thanks,
Scott _________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|
OlafS25
|  |
Re: Building Opus Magellan sources ... Posted on 19-Dec-2012 14:12:58
| | [ #2 ] |
|
|
 |
Elite Member  |
Joined: 12-May-2010 Posts: 6494
From: Unknown | | |
|
| @scabit
Do you have "Amikit" anywhere? It includes Magellan and all files |
|
Status: Offline |
|
|
ChaosLord
|  |
Re: Building Opus Magellan sources ... Posted on 19-Dec-2012 14:14:01
| | [ #3 ] |
|
|
 |
Cult Member  |
Joined: 4-Apr-2005 Posts: 782
From: Houston, Texas USA | | |
|
| @scabit
Good job! Keep tracking those bugs _________________ Wanna try a wonderfull magical Amiga strategy game? Total Chaos AGA |
|
Status: Offline |
|
|
thomas
|  |
Re: Building Opus Magellan sources ... Posted on 19-Dec-2012 14:45:28
| | [ #4 ] |
|
|
 |
Super Member  |
Joined: 28-May-2003 Posts: 1151
From: Germany | | |
|
| @scabit
Quote:
With these all installed, I still get a few errors. For example, in compiling images.c I get an error saying ICONCTRLA_IsNewIcon undefined. |
You need OS 3.9 NDK for this. ICONCTRLA_IsNewIcon is a tag for the IconControl function which is new in icon.library V45.
http://www.haage-partner.de/download/AmigaOS/
Quote:
I also am having a problem making the lsprintf.asm file...I get an "error writing object file". The other .asm files seem to build properly.
|
This is not a problem of the build process or the source file but rather of the file name or path of the object file. For example if it shall write a file called object/lsprintf.o but "object" is not a directory but an existing file, then object/lsprintf.o cannot be created. Or if it shall overwrite an existing lsprintf.o file but this file is write protected.
Last edited by thomas on 19-Dec-2012 at 02:45 PM.
_________________ Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de |
|
Status: Offline |
|
|
ChaosLord
|  |
Re: Building Opus Magellan sources ... Posted on 19-Dec-2012 16:21:28
| | [ #5 ] |
|
|
 |
Cult Member  |
Joined: 4-Apr-2005 Posts: 782
From: Houston, Texas USA | | |
|
| @scabit
Are you just fiddling with the sources to make sure its all there and working?
Or are u actually going to make improvements?
What r ur plans?
_________________ Wanna try a wonderfull magical Amiga strategy game? Total Chaos AGA |
|
Status: Offline |
|
|
scabit
|  |
Re: Building Opus Magellan sources ... Posted on 19-Dec-2012 19:52:39
| | [ #6 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| @thomas
Quote:
You need OS 3.9 NDK for this. ICONCTRLA_IsNewIcon is a tag for the IconControl function which is new in icon.library V45. |
Thank you. I'll try that out.
As for the lsprintf, I'll take a look and see where it is trying to write the object file.
Thanks!
Scott_________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|
scabit
|  |
Re: Building Opus Magellan sources ... Posted on 19-Dec-2012 19:56:45
| | [ #7 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| @ChaosLord
Quote:
Are you just fiddling with the sources to make sure its all there and working? |
I just wanted to try my hand at seeing if I could rebuild what already exists. There are many other people much more qualified to port Dopus Magellan to OS4....but the first step is to get what we have working in OS3.9. I was considering making minor changes to see if I could overcome the dopus.library incompatibilities with OS4 so that I could at least ome up with a 68k version of Dopus that runs under Os4.1. By the time I figure that out though, some of the really talented programmers may have already ported the whole thing to OS4. For me this is just an exercise in learning how Magellan works and seeing if I can fix it to work for OS4 as a 68k program - listers being the big incompatibility.
Scott_________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|
scabit
|  |
Re: Building Opus Magellan sources ... Posted on 19-Dec-2012 23:19:57
| | [ #8 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| @thomas
Quote:
ICONCTRLA_IsNewIcon is a tag for the IconControl function which is new in icon.library V45. |
I got past that one but now am getting an error in images.c that shows that ICONGETA_Screen is not defined. I am guessing that I will need newicon apis for version 41.22 instead of the ones I have which are 41.18.
Also, I found that you also need to get multiuser18api.lha from Aminet...Magellan needs those header files to compile as well.
Quote:
For example if it shall write a file called object/lsprintf.o but "object" is not a directory but an existing file, then object/lsprintf.o cannot be created |
I do not have an existing lsprintf.o anywhere in my SC: paths or dopus magellan paths. Nor are any of the directories write protected. Wonder what its trying to do that it won't build?
Also, magellan requires files libraries/sysinfo.h and proto/sysinfo.h that were not included. I tried the api from installerNG which included the savage headers named sysinfo.h but these were not the correct ones. Any idea which sysinfo.h headr files magellan might be looking for?
Thanks,
Scott_________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|
thomas
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 0:13:39
| | [ #9 ] |
|
|
 |
Super Member  |
Joined: 28-May-2003 Posts: 1151
From: Germany | | |
|
| @scabit
Quote:
I got past that one but now am getting an error in images.c that shows that ICONGETA_Screen is not defined. I am guessing that I will need newicon apis for version 41.22 instead of the ones I have which are 41.18.
|
This has nothing to do with NewIcons. I wonder why you guess so much.
ICONGETA_Screen is a tag for GetIconTags which is also a new function of icon.library in OS 3.9.
Quote:
Also, magellan requires files libraries/sysinfo.h and proto/sysinfo.h that were not included. I tried the api from installerNG which included the savage headers named sysinfo.h but these were not the correct ones. Any idea which sysinfo.h headr files magellan might be looking for?
|
A header file proto/xy.h is always needed for xy.library, so proto/sysinfo.h is for sysinfo.library. Searching Aminet for sysinfo lib revealed a developer package for Oberon. A bit more investigation revealed that sysinfo.library comes with Executive. It also contains the developer files for C.
http://aminet.net/package/util/misc/Executive
_________________ Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de |
|
Status: Offline |
|
|
salass00
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 8:05:36
| | [ #10 ] |
|
|
 |
Elite Member  |
Joined: 31-Oct-2003 Posts: 2707
From: Finland | | |
|
| @scabit
Quote:
I got past that one but now am getting an error in images.c that shows that ICONGETA_Screen is not defined. I am guessing that I will need newicon apis for version 41.22 instead of the ones I have which are 41.18.
|
Nope, it's in the 3.9 NDK: $ cd Development/NDK3.9/ $ cd include/include_h/ $ grep -R ICONGETA_Screen * workbench/icon.h:#define ICONGETA_Screen (ICONA_Dummy+69) $
|
|
Status: Offline |
|
|
scabit
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 12:03:10
| | [ #11 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| @thomas
Good detective work! You are correct, the sysinfo files from Executive as found on aminet are necessary to rebuild Magellan.
I also found that to build some of the support modules, the opussdk from aminet is required, pointed to by the assign dopussdk: in you path somewhere.
Thanks,
Scott _________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|
scabit
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 12:09:36
| | [ #12 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| @salass00
Yes, I just verified the same thing. I have those files, but they are not being used properly. Could it be that the problem is the ALL.gst file? It seems that if SASC uses the .gst file for faster building, it is necessary to rebuild the .gst file when you add any new include files to your include path. But SASC does NOT give you the makegst program...instead it runs it as part of its installation process when you install a new version of SASC. Therefore any includes you change after that do not get reflected in the ALL.gst file and so are apparently ignored if the gst is used unless explicitly referenced. Thats my theory anyway..... obviously if I have the 3.9 NDKfiles and I too can find the reference in workbench/icon.h to :#define ICONGETA_Screen (ICONA_Dummy+69) but magellan is not seeing this when building there is something odd going on. Scott _________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|
billyfish
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 12:29:46
| | [ #13 ] |
|
|
 |
Member  |
Joined: 17-Sep-2008 Posts: 32
From: Unknown | | |
|
| @scabit
Quote:
scabit wrote:
Yes, I just verified the same thing. I have those files, but they are not being used properly. Could it be that the problem is the ALL.gst file? It seems that if SASC uses the .gst file for faster building, it is necessary to rebuild the .gst file when you add any new include files to your include path. But SASC does NOT give you the makegst program...instead it runs it as part of its installation process when you install a new version of SASC. Therefore any includes you change after that do not get reflected in the ALL.gst file and so are apparently ignored if the gst is used unless explicitly referenced. |
gst files are global symbol table files, either just turn them off or add makegst to the sc command line in the makefile or using scopts.
cheers
billy
|
|
Status: Offline |
|
|
KimmoK
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 12:41:17
| | [ #14 ] |
|
|
 |
Elite Member  |
Joined: 14-Mar-2003 Posts: 5211
From: Ylikiiminki, Finland | | |
|
| Totally & absolutelly offtopic... but as it popped up somewhere there.... The executive scheduler. It would be nice to have it opensourced, perhaps it could be usable even as AROS scheduler.... _________________ - KimmoK // For freedom, for honor, for AMIGA // // Thing that I should find more time for: CC64 - 64bit Community Computer? |
|
Status: Offline |
|
|
NutsAboutAmiga
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 12:45:45
| | [ #15 ] |
|
|
 |
Elite Member  |
Joined: 9-Jun-2004 Posts: 12993
From: Norway | | |
|
| |
Status: Offline |
|
|
KimmoK
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 13:34:19
| | [ #16 ] |
|
|
 |
Elite Member  |
Joined: 14-Mar-2003 Posts: 5211
From: Ylikiiminki, Finland | | |
|
| @NutsAboutAmiga
It think it was far more than a port. Actually I'm not surprice if there is no single line of code from unix, but a clean implementation and a lot of client tools. (readme at aminet) (a preview pick) (keyfile)
Executive powered Amiga is the Amiga I learned to love (more than the plain original).
(and I think there's a lot to learn from Executive of how to do decent multiasking improvements in AOS4 & AROS, without breaking anything .... not sure if MOS already has things that executive enables)
nice user comment: "In many ways it's STILL more advanced than the schedulers in Linux/BSD/Solaris/Windows, or at least more intuitive to use. Via a GUI you could tell it things like "Real 3D is a real CPU hog, always run it at background" or "I want HippoPlayer to be a top priority, please make sure it always gets the CPU it wants". Then you could save the settings and enjoy your new, even more responsive AmigaOS without ever touching the ChangeTaskPriority command again."
But perhaps no more topic derailing executive stuff here. Last edited by KimmoK on 20-Dec-2012 at 01:42 PM. Last edited by KimmoK on 20-Dec-2012 at 01:42 PM. Last edited by KimmoK on 20-Dec-2012 at 01:39 PM.
_________________ - KimmoK // For freedom, for honor, for AMIGA // // Thing that I should find more time for: CC64 - 64bit Community Computer? |
|
Status: Offline |
|
|
NutsAboutAmiga
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 13:52:26
| | [ #17 ] |
|
|
 |
Elite Member  |
Joined: 9-Jun-2004 Posts: 12993
From: Norway | | |
|
| |
Status: Offline |
|
|
Hypex
 |  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 13:56:31
| | [ #18 ] |
|
|
 |
Elite Member  |
Joined: 6-May-2007 Posts: 11351
From: Greensborough, Australia | | |
|
| @scabit
Good on you for taking up the job. I can see you got excitied and couldn't wait to compile. 
However I just wanted to tell you that I have SAS/C installed on OS4 and for me it runs fine. So I run it "native" or emulated directly. You just have to make sure there are no conflicts with the SDK such as the LIB assign.
I haven't tried with updated includes but it should be simple enough in the SAS/C includes directory. Last edited by Hypex on 22-Dec-2012 at 12:57 PM.
|
|
Status: Offline |
|
|
scabit
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 14:25:20
| | [ #19 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| @Hypex
Ah...nice to know! it takes FOREVER to compile all this stuff in UAE!
I knew that some otherC compilers worked directly in Os4, but never tried SASC.
I finally got the "program" files to all compile. I had to add some explicit #includes in two or three of the .c files for some reason. I turned of GST and things are working better....so i expect my theory was correct. The problems with the icon defines missing was due to the ALL.gst being outdated - i.e. set up for the original includes not NDK 3.9. The program makegst is NOT available in SASC....it is only run when you install a new version. It does not exist in the bin directory. It is unpacked and run when you do a new SASC install, but is deleted when the install is completed....from what I can tell. At least with SASC 6.50 and above. Now I need to link everything and make sure the libraries are all correct to make a working executable.
Slow but steady.....
_________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|
scabit
|  |
Re: Building Opus Magellan sources ... Posted on 20-Dec-2012 21:34:26
| | [ #20 ] |
|
|
 |
Super Member  |
Joined: 8-Jan-2005 Posts: 1667
From: Satellite Beach, FL USA | | |
|
| Well, I am sort of able to link and create a opus magellan binary.
A few problems...I still have some undefined references as follows:
Undefined symbols First Referenced @GetMsg File 'dopusmsg.o' Enter a DEFINE value for @GetMsg (default ___stub): @DeleteMsgPort File 'dopusmsg.o' Enter a DEFINE value for @DeleteMsgPort (default ___stub): @PutMsg File 'dopusmsg.o' Enter a DEFINE value for @PutMsg (default ___stub): @CreateMsgPort File 'dopusmsg.o' Enter a DEFINE value for @CreateMsgPort (default ___stub): @FindPort File 'dopusmsg.o' Enter a DEFINE value for @FindPort (default ___stub): @WaitPort File 'dopusmsg.o' Enter a DEFINE value for @WaitPort (default ___stub): @Permit File 'dopusmsg.o' Enter a DEFINE value for @Permit (default ___stub): @AllocVec File 'dopusmsg.o' Enter a DEFINE value for @AllocVec (default ___stub): @Forbid File 'dopusmsg.o' Enter a DEFINE value for @Forbid (default ___stub): @FreeVec File 'dopusmsg.o' Enter a DEFINE value for @FreeVec (default ___stub):
SLINK Complete - Maximum code size = 2028 ($000007ec) bytes
The dopus binary produced is 436,244 bytes. The actual release dopus file is 434,612 bytes.
If I don't make any changes to the source code, my compiled program actually works...I think it just uses the previous information for where to find the functions in the libraries somehow. When I make changes to the source code and rebuild I get DSI errors.....I need to solve the missing references above I think to make a working executable.
I have tried adding the following lines to dopusmsg.c ... no success...
#include clib/exec_protos.h #include clib/rexxsyslib_protos.h #include stdio.h #include stdlib.h #include rexx/storage.h #include pragmas/exec_sysbase_pragmas.h #include dos/dos.h (using the proper greater than and less than symbols of course...amigaworld won't let me display them in a post....)
Any idea what I need to add to have the linker find the above references?
Thanks,
Scott Last edited by scabit on 20-Dec-2012 at 09:36 PM.
_________________ AmigaOne uA1-c 512M RAM - Only Amiga Makes It Possible! Check my blog AmigaOne Computing |
|
Status: Offline |
|
|