QL / PASCAL

Anything QL Software or Programming Related.
User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: QL / PASCAL

Post by NormanDunbar »

Progress on Pascal has stalled -- as I mentioned in another thread -- due to the recent arrival of Wesley.
After 24 years of marriage, my wife and I have finally ...... bought a dog! :D

When I get time to sleep, and do stuff, I'll get back on the case. Until then, I'm afraid I'm going to be quite quiet for a while. I have a serious need to train this little b*gger to stop bloody biting everything! Other than that, he's adorable!


Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: QL / PASCAL

Post by NormanDunbar »

Hi Folks,

long time no see! :D :D :D

Right, I had a few minutes to spare -- Wesley is asleep after helping me clean the house -- so I thought I'd try and get back to Free Pascal for the QL. Remember that?

So, first port of call is updating the source code, but it no longer appears that svn.freepascal.org is acessible. Looks like the repository has moved to GitLab (and is mirrored on GitHub) back in August! So, I'm now updating my documentation and testing out that it still works. Then I might be able to get going again.

If anyone is interested, the news about the migration was announced back in August 8th, on https://www.freepascal.org/. Details of using Git to access the source code are on https://www.freepascal.org/develop.var with more detail on the Wiki at https://wiki.freepascal.org/FPC_git.

I'll be back...............

I'm back! Right, the document is updated and available at https://github.com/NormanDunbar/FPC-Cro ... ses/latest as usual. There are a couple of bits I need to confirm before I update it again, all to do with creating patches. Git has a couple of options and I need to know which is desired by FPC to get our code onto the main release.

I've tested the processes in the document and all work fine.




Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
mk79
QL Wafer Drive
Posts: 1349
Joined: Sun Feb 02, 2014 10:54 am
Location: Esslingen/Germany
Contact:

Re: QL / PASCAL

Post by mk79 »

Thanks, Norm!


Derek_Stewart
Font of All Knowledge
Posts: 3932
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QL / PASCAL

Post by Derek_Stewart »

Hi,

I have been trying to generate a Free Pascal Cross Compiler with the Sinclair QL as a Target, on Linux Mint 21.3

I have come across 2 errors in the compiling of crossall with the command:

make crossall OS_TARGET=sinclairql CPU_TARGET=m68k

generates this error:

system.pp(438) Error: Error while assembling exitcode 1
system.pp(438) Fatal: There were 2 errors compiling module, stopping
Fatal: Compilation aborted

Can anyone tell me what the errors mean?

Regards
Derek


Regards,

Derek
User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: QL / PASCAL

Post by NormanDunbar »

Derek_Stewart wrote:system.pp(438) Error: Error while assembling exitcode 1
system.pp(438) Fatal: There were 2 errors compiling module, stopping
Something wrong at line 438 of the file "system.pp" from the error. But it's not really helpful, especially as there are only 437 lines!

Sorry, I'm no help at all. :cry:

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
tofro
Font of All Knowledge
Posts: 2686
Joined: Sun Feb 13, 2011 10:53 pm
Location: SW Germany

Re: QL / PASCAL

Post by tofro »

I tried that and had the same problem.

To me, it looks as if it wants to use the x86 assembler to assemble a 68k file....

Something must have changed in the compile process.


ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: QL / PASCAL

Post by NormanDunbar »

Morning Gents.

I just fired up my old laptop and did the following:

Code: Select all

cd ~/SourceCode/fpc
make clean OS_TARGET=sinclairql CPU_TARGET=m68k
make crossall OS_TARGET=sinclairql CPU_TARGET=m68k
make crossinstall OS_TARGET=sinclairql CPU_TARGET=m68k INSTALL_PREFIX="/home/norman/bin"
And it all worked as before. Version 3.3.1 built fine.

I then created a new copy of the repo and built that exactly as above:

Code: Select all

cd ~/SourceCode
git clone https://gitlab.com/freepascal.org/fpc/source.git fpcCopy
cd ~/SourceCode/fpcCopy
make clean OS_TARGET=sinclairql CPU_TARGET=m68k
make crossall OS_TARGET=sinclairql CPU_TARGET=m68k
make crossinstall OS_TARGET=sinclairql CPU_TARGET=m68k INSTALL_PREFIX="/home/norman/bin"
When I looked in ~/bin/lib/fpc/3.3.1 I see a new ppcross68k and on exceution, it shows up as version 3.3.1 also. Checking on GitLab, the 3.3.1 version seems to be still current in the main source repository, although 3.2.2 is the current binary release.

I'm afraid that I cannot reproduce your errors on Linux Mint 20.3.

On my new laptop, I didn't have anything already installed, so I followed the exact process in the document linked above. It all worked perfectly with no errors. This is on Linux Mint 21.1 (Vera).


Spooky!

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
Derek_Stewart
Font of All Knowledge
Posts: 3932
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QL / PASCAL

Post by Derek_Stewart »

Hi Norm,

I created a Virtual Machine in QEMU om my Linux Mint 21.1 computer and installed Linux Mint 21.1 in the Virtual Machine.

I went through procedure detailed in the document: QlCrossCompiler.1.6.pdf

Got to section 5.3 Build the Sinclair QL Cross Compiler:

entrered the command:

make clean OS_TARGET=sinclairql CPU_TARGET=m68k

no errors.

make crossall OS_TARGET=sinclairql CPU_TARGET=m68k

2 Errors :
FPC.png
Tried this on Mint 20.3, 21.1 same result.

Also tried a Debian 11 VM with the same results...

No more time to look at this, I will have to come back after I have finished other work.


Regards,

Derek
User avatar
XorA
Site Admin
Posts: 1359
Joined: Thu Jun 02, 2011 11:31 am
Location: Shotts, North Lanarkshire, Scotland, UK

Re: QL / PASCAL

Post by XorA »

Given your all using Ubuntu is this a dash vs bash issue! I’ve lost count of the amount of build systems I’ve seen that don’t work with shell as dash!


User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: QL / PASCAL

Post by NormanDunbar »

Ok Derek, I did believe you when you said it had had two errors. ;)

I'm looking at your screen dump, it has a strange error messages "scratch at end of line". Googling for that returns a couple of hits related to the assembler, vasm. Warning 1007 implies that there is garbage at the end of the line mentioned -- is there any possibility you have opened a file and saved it with Windows end of line characters? That might explain the warning 1007 messages, but possibly not the errors.

I've rerun everything myself again, including the download and build of the assembler and linker, and run a clean and build as before, and it all worked fine. I saved the output from the "crossall" build in a text file, and I don't see any of the Warning 1007 messages in your screen shot. I also don't see any of these mssages:

Code: Select all

.section .data.<whatever>,"aw"
Where "whatever" is a number of different section names, I assume, in your screen dump.

When you get a chance, can you run the following please, to capture the clean and the build output, and upload it so I can look at it please?

Code: Select all

make clean OS_TARGET=sinclairql CPU_TARGET=m68k > ~/clean.output.txt
make crossall OS_TARGET=sinclairql CPU_TARGET=m68k >  ~/crossall.output.txt
The two files, clean.output.txt and crossall.output.txt will be created in your home directory. Obviously, when these commands run, you won;t see the usualy text scrolling up the screen.

Cheers,
Norm.

PS. I've attached the copy of ppcross68k that my tests created. In case you were after a copy of the latest build.

fpcql.zip
(1.35 MiB) Downloaded 27 times


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
Post Reply