Jump to content

Recommended Posts

Well, if its a temporary situation, that's understandable.

Your desire to cover many toolchains will keep you busy for a long time. Consider an adapter layer, something like maybe what LLVM does, meaning a universal intermediate compilation that then gets run through a particular adapter that would then express the correct source and drive the toolchain.

Link to comment
Share on other sites

On 11/2/2021 at 6:12 PM, drac030 said:

I tried it on an AMD64 PC running FreeBSD 10.1. The result: illegal system call (core dumped).

It turns out you need FreeBSD 12 or newer. Are you able to test on that?

 

I worked out all the required versions and added them to the website:

https://language.metaproject.frl/#get

 

For those who tried on Windows: does Meta output text properly, or does the cursor in the command window not advance properly, so that text is overwritten?

  • Like 1
Link to comment
Share on other sites

Ubuntu 18.04

 

./compile.ape rainbow.meta 
Compiling file rainbow.meta

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   954  100   521  100   433    590    490 --:--:-- --:--:-- --:--:--  1080

Result is in file program.xex

works :]

 

  • Thanks 1
Link to comment
Share on other sites

I tried Meta but failed. I didn't get very far without the Atari specific examples. One rainbow example is far too little.
 

Try port this:

 

https://github.com/tebe6502/Mad-Pascal/tree/master/samples/a8

 

https://github.com/KarolS/millfork/tree/master/examples/a8

 

https://github.com/zbyti/k65-playground/tree/main/src/a8

 

not all of them, of course, but those that are now been possible.

Edited by zbyti
Link to comment
Share on other sites

1 hour ago, zbyti said:

I tried Meta but failed. I didn't get very far without the Atari specific examples. One rainbow example is far too little.

Currently fixing a regression that blocks the others.

 

1 hour ago, zbyti said:

I've been looking at those. It seems to me it's a nice task for you. ?

Link to comment
Share on other sites

Don't forget about Mad Pascal ;)

 

var
  RTCLOK : byte absolute $14;
  COLPF2 : byte absolute $D018;
  COLBK  : byte absolute $D01A;
  WSYNC  : byte absolute $D40A;
  VCOUNT : byte absolute $D40B;
  a      : byte absolute $e0;

begin
  repeat
    a := RTCLOK + VCOUNT shl 1;
    wsync := a; COLPF2 := a; COLBK := a;
  until false;
end.
; --- RepeatUntilProlog
l_0061

; optimize OK (rainbow.pas), line = 11

	lda VCOUNT
	asl @
	add RTCLOK
	sta A

; optimize OK (rainbow.pas), line = 12

	sta WSYNC
	sta COLPF2
	sta COLBK

; optimize OK (rainbow.pas), line = 13

	jmp l_0061

 

Edited by zbyti
Link to comment
Share on other sites

On 11/5/2021 at 5:21 PM, Kaj de Vos said:

It turns out you need FreeBSD 12 or newer. Are you able to test on that?

No, and my own FreeBSD box is an i386, so even if I upgraded the system to 12+, it would not help much, I guess. But do not let it bother you, I am writing my stuff exclusively in assembler anyways and I prefer to do that directly on the target machine, so I am only marginally interested in high-level programming languages, the less if these are cross-compilers only.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...