Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #5106 > unrolled thread

Trouble linking with ca65?

Started byChristophe Meneboeuf <christophe.meneboeuf@gmail.com>
First post2019-05-25 07:59 -0700
Last post2019-06-01 19:41 +0000
Articles 15 on this page of 35 — 15 participants

Back to article view | Back to comp.sys.apple2.programmer


Contents

  Trouble linking with ca65? Christophe Meneboeuf <christophe.meneboeuf@gmail.com> - 2019-05-25 07:59 -0700
    Re: Trouble linking with ca65? Oliver Schmidt <ol.sc@web.de> - 2019-05-25 16:15 +0000
      Re: Trouble linking with ca65? Christophe Meneboeuf <christophe.meneboeuf@gmail.com> - 2019-05-25 09:28 -0700
        Re: Trouble linking with ca65? Antoine Vignau <antoine.vignau@laposte.net> - 2019-05-25 11:04 -0700
          Re: Trouble linking with ca65? Christophe Meneboeuf <christophe.meneboeuf@gmail.com> - 2019-05-25 12:02 -0700
            Re: Trouble linking with ca65? Antoine Vignau <antoine.vignau@laposte.net> - 2019-05-25 12:13 -0700
              Re: Trouble linking with ca65? Christophe Meneboeuf <christophe.meneboeuf@gmail.com> - 2019-05-25 12:32 -0700
                Re: Trouble linking with ca65? Steve Nickolas <usotsuki@buric.co> - 2019-05-26 03:08 -0400
                  Re: Trouble linking with ca65? Michael J. Mahon <mjmahon@aol.com> - 2019-05-26 15:20 -0500
            Re: Trouble linking with ca65? schampailler@skynet.be - 2019-06-04 03:36 -0700
              Re: Trouble linking with ca65? Christophe Meneboeuf <christophe.meneboeuf@gmail.com> - 2019-06-05 11:42 -0700
        Re: Trouble linking with ca65? Christophe Meneboeuf <christophe.meneboeuf@gmail.com> - 2019-05-25 16:10 -0700
          Re: Trouble linking with ca65? Andy McFadden <thefadden@gmail.com> - 2019-05-26 08:00 -0700
          Re: Trouble linking with ca65? ol.sc@web.de (Oliver Schmidt) - 2019-05-26 20:15 +0000
    Trouble linking with ca65? Michael Pohoreski <michael.pohoreski@gmail.com> - 2019-05-29 12:20 -0700
      Trouble linking with ca65? Antoine Vignau <antoine.vignau@laposte.net> - 2019-05-29 14:55 -0700
        Trouble linking with ca65? Michael Pohoreski <michael.pohoreski@gmail.com> - 2019-05-30 09:09 -0700
          Trouble linking with ca65? Antoine Vignau <antoine.vignau@laposte.net> - 2019-05-30 10:01 -0700
            Trouble linking with ca65? lroathe@gmail.com - 2019-05-30 10:32 -0700
              Re: Trouble linking with ca65? Andy McFadden <thefadden@gmail.com> - 2019-05-31 10:34 -0700
                Re: Trouble linking with ca65? Michael Pohoreski <michael.pohoreski@gmail.com> - 2019-05-31 12:07 -0700
                  Re: Trouble linking with ca65? Antoine Vignau <antoine.vignau@laposte.net> - 2019-05-31 12:18 -0700
              Re: Trouble linking with ca65? Steven Hirsch <snhirsch@gmail.com> - 2019-06-02 09:23 -0400
                Re: Trouble linking with ca65? Andy McFadden <thefadden@gmail.com> - 2019-06-02 07:44 -0700
                  Re: Trouble linking with ca65? Steven Hirsch <snhirsch@gmail.com> - 2019-06-02 18:49 -0400
                    Re: Trouble linking with ca65? Andy McFadden <thefadden@gmail.com> - 2019-06-03 08:19 -0700
                      Re: Trouble linking with ca65? olivier.zardini@cooperteam.eu - 2019-06-03 09:29 -0700
            Re: Trouble linking with ca65? Hugh Hood <hughhood@earthlink.net> - 2019-06-02 10:33 -0500
              Re: Trouble linking with ca65? Michael J. Mahon <mjmahon@aol.com> - 2019-06-02 16:17 -0500
              Re: Trouble linking with ca65? Jeff Blakeney <CUTjeffrey_blakeney@yahoo.ca> - 2019-06-03 00:58 -0400
              Re: Trouble linking with ca65? Michael Pohoreski <michael.pohoreski@gmail.com> - 2019-06-03 07:53 -0700
                Re: Trouble linking with ca65? Andy McFadden <thefadden@gmail.com> - 2019-06-03 08:10 -0700
                Re: Trouble linking with ca65? Hugh Hood <hughhood@earthlink.net> - 2019-06-08 13:53 -0500
                  Re: Trouble linking with ca65? Michael Pohoreski <michael.pohoreski@gmail.com> - 2019-06-10 06:38 -0700
          Re: Trouble linking with ca65? mmphosis <mmphosis@macgui.com> - 2019-06-01 19:41 +0000

Page 2 of 2 — ← Prev page 1 [2]


#5130

FromMichael Pohoreski <michael.pohoreski@gmail.com>
Date2019-05-31 12:07 -0700
Message-ID<dd6e7d57-10f3-4e54-867b-ec093f90ec8d@googlegroups.com>
In reply to#5129
Thanks Andy! I'll go through my (short) list of Merlin32 bugs and see if they are still relevant.

[toc] | [prev] | [next] | [standalone]


#5131

FromAntoine Vignau <antoine.vignau@laposte.net>
Date2019-05-31 12:18 -0700
Message-ID<61a4d6cc-48b3-4066-a9a4-c38408a792f1@googlegroups.com>
In reply to#5130
I like issue #1 :-)
av

[toc] | [prev] | [next] | [standalone]


#5133

FromSteven Hirsch <snhirsch@gmail.com>
Date2019-06-02 09:23 -0400
Message-ID<kqadnTGe_51dUG7BnZ2dnUU7-cWdnZ2d@giganews.com>
In reply to#5128
On 5/30/19 1:32 PM, lroathe@gmail.com wrote:

> Merlin32 on Github:
> 
> https://github.com/apple2accumulator/merlin32

This has compilation issues on Linux.  Is it actually up to date?

[toc] | [prev] | [next] | [standalone]


#5134

FromAndy McFadden <thefadden@gmail.com>
Date2019-06-02 07:44 -0700
Message-ID<870b1fb9-1738-4aaf-95c0-8ee381a41aa0@googlegroups.com>
In reply to#5133
On Sunday, June 2, 2019 at 6:23:17 AM UTC-7, Steven Hirsch wrote:
> On 5/30/19 1:32 PM, lroathe wrote:
> > Merlin32 on Github:
> > 
> > https://github.com/apple2accumulator/merlin32
> 
> This has compilation issues on Linux.  Is it actually up to date?

AFAIK, there hasn't been any significant development done since 1.0.  The github repository has only one meaningful change in it (line termination fix in the sources).

There are some bugs in the code that the compiler identifies (see issues #2 and #12).  The linux_makefile has -Werror set, so any warnings cause compilation to fail.  If you remove "-Werror", it will compile successfully.

[toc] | [prev] | [next] | [standalone]


#5137

FromSteven Hirsch <snhirsch@gmail.com>
Date2019-06-02 18:49 -0400
Message-ID<v7GdnSfqi_Hxz2nBnZ2dnUU7-cmdnZ2d@giganews.com>
In reply to#5134
On 6/2/19 10:44 AM, Andy McFadden wrote:
> On Sunday, June 2, 2019 at 6:23:17 AM UTC-7, Steven Hirsch wrote:
>> On 5/30/19 1:32 PM, lroathe wrote:
>>> Merlin32 on Github:
>>> 
>>> https://github.com/apple2accumulator/merlin32
>> 
>> This has compilation issues on Linux.  Is it actually up to date?
> 
> AFAIK, there hasn't been any significant development done since 1.0.  The
> github repository has only one meaningful change in it (line termination
> fix in the sources).
> 
> There are some bugs in the code that the compiler identifies (see issues #2
> and #12).  The linux_makefile has -Werror set, so any warnings cause
> compilation to fail.  If you remove "-Werror", it will compile
> successfully.

The first one I hit really cannot be ignored on a 64-bit build.  It's trying 
to stuff a char* (64-bit storage size) into an integer format string (%d, 
32-bit wide).  Easy fix, but I wanted to ensure I actually had the latest 
sources before diving in.


[toc] | [prev] | [next] | [standalone]


#5141

FromAndy McFadden <thefadden@gmail.com>
Date2019-06-03 08:19 -0700
Message-ID<5b70673e-fe98-4c46-9522-8b18adb6a8cc@googlegroups.com>
In reply to#5137
On Sunday, June 2, 2019 at 3:49:22 PM UTC-7, Steven Hirsch wrote:
> The first one I hit really cannot be ignored on a 64-bit build.  It's trying 
> to stuff a char* (64-bit storage size) into an integer format string (%d, 
> 32-bit wide).  Easy fix, but I wanted to ensure I actually had the latest 
> sources before diving in.

It's an error message, so you'll only explode if you hit the specific error in question.

FWIW, fixes to problems are usually included in the issue pages on github.

The biggest impediment to updating Merlin 32 is the lack of an open-source license.  By default (USA law) the code is owned by the authors, as are any changes.  So distributing a modified version of the code would require permission from everybody who ever made a change, which gets cumbersome quickly.  Using a license like Apache 2.0 makes the source distributable, and also states that any changes "intentionally submitted for inclusion" are also subject to the Apache license.

[toc] | [prev] | [next] | [standalone]


#5142

Fromolivier.zardini@cooperteam.eu
Date2019-06-03 09:29 -0700
Message-ID<9d9b6d10-80ff-4b7a-9eb5-6645d74b981a@googlegroups.com>
In reply to#5141
   Hi,

     I'm currently updating Cadius to add DOS 3.3 support and I am also addressing few requirements (unique error code, quiet mode...). I am also translating all comments from French to English to make the life easier for people who want to read the code.

     I'll do the same for Merlin 32 later this year, so you can continue to write your bugs report somewhere, i'll check & clear them all when I'll enter into the Merlin 32 modification process.

     In the meantime, you can of course patch the code if it doesn't work as you expect.

     Olivier

[toc] | [prev] | [next] | [standalone]


#5135

FromHugh Hood <hughhood@earthlink.net>
Date2019-06-02 10:33 -0500
Message-ID<FaidnSlYeODIcW7BnZ2dnUU7-a_NnZ2d@earthlink.com>
In reply to#5127
Antoine,

Since you and Olivier are the authors of Merlin32, may I ask your 
thoughts on adding 'features' to Merlin32 that would make code 
incompatible with Merlin 16?

For example, I would really like a 'block comment' pseudo opcode (or 
other delimiter) that mimics the effect of the '/* */' in 'C'.

I often like to test different multi-line snippets of code, and having 
to add '*' to each line of the replaced code can be a bit tedious, 
particularly when I need to go back and remove them because the original 
code was better.

But, I do realize that Merlin16 would, in all likelihood, choke on this, 
unless somehow the DUM and DEND could be re-purposed for this.

I've been reluctant to request this enhancement for this reason, 
although I realize that 'PUTBIN' is a case in point.

What do you think?  Should Merlin32 stay 'pure'?

I must say that since I've begun using Merlin32, I've _never_ gone back 
to Merlin16. It's a wonderful piece of work. Thank you both.





Hugh Hood



On 5/30/2019 12:01 PM, Antoine Vignau wrote:
> I know other devs have put Merlin 32 and Cadius on their github account. I'll tell them to come here and provide a link,
> 
> av
> 

[toc] | [prev] | [next] | [standalone]


#5136

FromMichael J. Mahon <mjmahon@aol.com>
Date2019-06-02 16:17 -0500
Message-ID<Su6dndBE2PxooWnBnZ2dnUU7-V3NnZ2d@giganews.com>
In reply to#5135
Hugh Hood <hughhood@earthlink.net> wrote:
> Antoine,
> 
> Since you and Olivier are the authors of Merlin32, may I ask your 
> thoughts on adding 'features' to Merlin32 that would make code 
> incompatible with Merlin 16?
> 
> For example, I would really like a 'block comment' pseudo opcode (or 
> other delimiter) that mimics the effect of the '/* */' in 'C'.
> 
> I often like to test different multi-line snippets of code, and having 
> to add '*' to each line of the replaced code can be a bit tedious, 
> particularly when I need to go back and remove them because the original 
> code was better.
> 
> But, I do realize that Merlin16 would, in all likelihood, choke on this, 
> unless somehow the DUM and DEND could be re-purposed for this.
> 
> I've been reluctant to request this enhancement for this reason, 
> although I realize that 'PUTBIN' is a case in point.
> 
> What do you think?  Should Merlin32 stay 'pure'?
> 
> I must say that since I've begun using Merlin32, I've _never_ gone back 
> to Merlin16. It's a wonderful piece of work. Thank you both.
> 
> 
> 
> 
> 
> Hugh Hood

I’d vote for keeping it forward and backward compatible, since not every
Apple II developer has access to a modern machine (or prefers to develop
under emulation). 

It would be beneficial if code developed with Merlin32 “just worked” if
assembled with Merlin8/16. 

BTW, DUM/DEND do not simply ignore contents, labels are defined. 

-- 
-michael - NadaNet 3.1 and AppleCrate II:  http://michaeljmahon.com

[toc] | [prev] | [next] | [standalone]


#5138

FromJeff Blakeney <CUTjeffrey_blakeney@yahoo.ca>
Date2019-06-03 00:58 -0400
Message-ID<qd29ea$pqd$1@dont-email.me>
In reply to#5135
On 2019-06-02 11:33 a.m., Hugh Hood wrote:
> Antoine,
> 
> Since you and Olivier are the authors of Merlin32, may I ask your 
> thoughts on adding 'features' to Merlin32 that would make code 
> incompatible with Merlin 16?
> 
> For example, I would really like a 'block comment' pseudo opcode (or 
> other delimiter) that mimics the effect of the '/* */' in 'C'.
> 
> I often like to test different multi-line snippets of code, and having 
> to add '*' to each line of the replaced code can be a bit tedious, 
> particularly when I need to go back and remove them because the original 
> code was better.

No need to change it to be incompatible with Merlin16 for this.  This is 
an editor option.  Most of the code editors I use allow you to select a 
block of text and then hit a hot key or select a menu item to comment or 
un-comment that section.  They also allow indent/un-indent the same way.

[toc] | [prev] | [next] | [standalone]


#5139

FromMichael Pohoreski <michael.pohoreski@gmail.com>
Date2019-06-03 07:53 -0700
Message-ID<d468c2ae-48fb-4594-b9f2-904e3c9e1b6f@googlegroups.com>
In reply to#5135
> For example, I would really like a 'block comment' pseudo opcode (or 
> other delimiter) that mimics the effect of the '/* */' in 'C'. 

I'll second this!  A block comment would be a REALLY nice QoL (Quality of Life) feature.

Part of the problem is that DO/ELSE/FIN is *still* parsing the conditional part even when it shouldn't be. :-/
This makes it impossible to leave comments, comment out broken code, etc.

        ORG $300

    DO 0
        RNG     ; Throws an error. Why isn't this ignored?
    ELSE
        RTS
    FIN

I guess one solution would be to use C's pre-processor and use its macro #define #if #else #endif.
Is there a standard naming convention (file extension) for a pre-processor asm file that *produces* an .s file?
i.e. ".r" ?

    ---Makefile---

    foo.s: foo.r
        preprocess $< -o $@

    foo: foo.s
        merlin32 $<

Michael

[toc] | [prev] | [next] | [standalone]


#5140

FromAndy McFadden <thefadden@gmail.com>
Date2019-06-03 08:10 -0700
Message-ID<fd535e3d-e3ab-467c-98c3-5da15efceaa5@googlegroups.com>
In reply to#5139
On Monday, June 3, 2019 at 7:53:40 AM UTC-7, Michael Pohoreski wrote:
> I guess one solution would be to use C's pre-processor and use its macro #define #if #else #endif.

The JSON format doesn't allow comments at all.  Their recommendation is something similar: pre-process the text to strip out the comments before feeding it into the JSON decoder.

The trick is to be careful so as not to change the line positions.  Otherwise the error messages are all wrong.  For comments you just replace the blocks with blank lines, but getting fancier requires cooperation with the assembler (e.g. support for #line directives).

[toc] | [prev] | [next] | [standalone]


#5145

FromHugh Hood <hughhood@earthlink.net>
Date2019-06-08 13:53 -0500
Message-ID<bJSdnTPPIZzemWHBnZ2dnUU7-dnNnZ2d@earthlink.com>
In reply to#5139
Michael,

Thank you. Your comment about DO/FIN made me realize the answer to my 
request for easy block comments in Merlin32 was always right in front of me.

***********
CmntST      MAC          ; comment block start
             DO     #0
             <<<

CmntEND     MAC          ; comment block end
             FIN
             <<<
***********

             CmntST

Code        LDA    #1

End
             CmntEND

***********

As we know, most modern editors can be customized to 'dim/gray' 
everything between the 'CmntST' and 'CmntEND', so the editor part should 
be fine. I also suppose the macro names could be 'C*/' and 'C/*' to make 
them more 'C' like.

Somewhat related to Andy's comment in regard to line numbers in the C 
pre-processor option, the Merlin32 assembly listing won't assign line 
numbers to the commented out part. I don't know if that is all that 
important, however. It _could_ be.




Hugh Hood


On 6/3/2019 9:53 AM, Michael Pohoreski wrote:
>> For example, I would really like a 'block comment' pseudo opcode (or
>> other delimiter) that mimics the effect of the '/* */' in 'C'.
> 
> I'll second this!  A block comment would be a REALLY nice QoL (Quality of Life) feature.
> 
> Part of the problem is that DO/ELSE/FIN is *still* parsing the conditional part even when it shouldn't be. :-/
> This makes it impossible to leave comments, comment out broken code, etc.
> 
>          ORG $300
> 
>      DO 0
>          RNG     ; Throws an error. Why isn't this ignored?
>      ELSE
>          RTS
>      FIN
> 

[toc] | [prev] | [next] | [standalone]


#5146

FromMichael Pohoreski <michael.pohoreski@gmail.com>
Date2019-06-10 06:38 -0700
Message-ID<c63e7e59-1811-43e7-a294-f73c7c60e109@googlegroups.com>
In reply to#5145
Ha!  Glad to have inspired a solution. :-) That's a nice macro trick!

Sadly, I still need to comment out in-complete / partial code so in the mean time I'll have to rely on my editor to manually add/remove comments at the BOL.

Michael

[toc] | [prev] | [next] | [standalone]


#5132

Frommmphosis <mmphosis@macgui.com>
Date2019-06-01 19:41 +0000
Message-ID<mmphosis-1559417651@macgui.com>
In reply to#5124
I concur.

> Maybe it's time for a new thread: What's your toolchain?  Pros? Cons?

Linux, Mac OS X -- Cons: I don't currently have other platform builds in my
toolchain.

curl/wget cp -- Cons: little to no version control

make

cc gcc

merlin32

Kegs, telnet and copy/paste -- Cons: copy/paste is error prone

alias mondump='hexdump -v -e '\''":" 16/1 "%X " "\n"'\'''

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | comp.sys.apple2.programmer


csiph-web