CC65 compiler

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems. See the NESdev wiki for more information.

Moderator: Moderators

User avatar
Bregalad
Posts: 8056
Joined: Fri Nov 12, 2004 2:49 pm
Location: Divonne-les-bains, France

Re: CC65 compiler

Post by Bregalad »

rainwarrior wrote:I just put a copy of cc65 in a cc65 folder at the same level as each project, and then my command lines are just relative like cc65/bin/cc65 etc.
[...]
cc65 is small, there's no harm in having multiple copies around.
Can't you do it linux-style and use shortuts instead ? The equivalent of PATH is to have a shortcut in /usr/bin pointing to the actual program - sometimes to another shortcut and so on.
User avatar
rainwarrior
Posts: 8734
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: CC65 compiler

Post by rainwarrior »

That's not really functionally different than a global PATH though. My objection is to the globalness of it. If I have an old project, I want to keep using the version of CC65 it started with, I don't want a new global version potentially breaking old code.
Oziphantom
Posts: 1565
Joined: Tue Feb 07, 2017 2:03 am

Re: CC65 compiler

Post by Oziphantom »

How to add something to the PATH on every version of Windows and DOS since 3.0

SET PATH=%PATH%;<new thing here>

Or if you want to do it via a gui since Win95

System >> Advanced System Settings >> click on Environment Variables button on the first pane. This is the same dialog in Windows 10 as in XP ;) if you are on 98/95 you might need to hunt for it...

Personally I just added one folder PathStuff to it and I just put what I want on the path into it, saves the hassle each time.

If you want to program get a US keyboard. If you want to do 6502 get a UK keyboard ;) Or just switch the keyboard layouts in windows (LAlt+shift by default but you can change it ) and learn the US or UK layout for your keyboard. :D
Also in English we never use {} [] or # @ < > either, nor ~ or really care about ' vs ` and ^ is something you do with a pen and not something you ever type because when you need to make a correction you just delete and type it again ;) and I'm not even sure what one uses | for in a normal context.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: CC65 compiler

Post by Pokun »

I guess those characters aren't used more than in Swedish after all (except £, $ and semicolon of course). I guess when Swedish layout was standardized they just felt that those symbols are less important and because they needed room for the three additional letters ÅÄÖ they moved {[]} to the AltGr row of the number keys (but they also moved around a bunch of other keys for some reason).
American keyboards doesn't seem to use AltGr at all, it's just a secondary Alt key. UK keyboards looks like they have the same key layout as Swedish keyboards. Just the labels on the keys are different.

I'm already using Japanese keyboard layout in Windows a lot (since it's the most practical way to type Japanese) and in alphanumeric input mode, Japanese keyboard layout is pretty much the same as the English ones and I pretty much memorized the keys for that. So why don't I just use that? Because switching keyboard layout back and forth isn't really less troublesome than using AltGr.
Also getting a foreign keyboard would just introduce more problems than it would solve.
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: CC65 compiler

Post by FrankenGraphics »

[] are used in quoting to insert editorial notes. It is especially used by journalists, in academia, and by private sector researchers.

-To clarify something which got lost out of context:
"Due to extensive cat cuddling, it [the construction of a warehouse] will be delayed", says a representative of the company.

-To cut out clauses
"[...] it will be delayed", says a representative

This is especially versatile when you want to declare that the whole sentence hasn't been reproduced. In papers, you'd use this a lot when quoting others' research.

-To assure the reader that a spelling or expression or choice of words is reproduced as is, and not a mistake:
"Due to extensive bat [sic] cuddling, it will be delayed".

In dictionaries, they're used for declaring the start and end of phonetic script, but i now see that oxfords' online dictionary is using / / instead.

| is a separator. You can for example use it in a document header/footnote like so:
name | phone | p.o. box

In dictionaries, it is used to separe base word from endings.
which/how in russian (latin transcript): kak|óy, -aya, -óye, -ye.


----
The worst decision they made on swedish keyboard layouts is that they mapped ¤ to shift+4 where $ should be. This might very well be the first time i've used ¤ for something.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: CC65 compiler

Post by Pokun »

Those are all what I'd call technical usage, rather than "normal" text though.
In phonology // and [] are both used for pronunciation, but I'm not really sure what's different between their usage.
The worst decision they made on swedish keyboard layouts is that they mapped ¤ to shift+4 where $ should be. This might very well be the first time i've used ¤ for something.
Haha agreed! I always thought it was so useless so I googled it. Apparently it's used in economy as a currency sign as a replacement when a certain currency sign isn't available. I don't think I've ever seen it being used though. I kind of wished it was possible to make a dollar sign appear instead of it when programming.
According to Swedish Wikipedia it seems it was used instead of the dollar sign in BASIC of the Swedish computer ABC 80.
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: CC65 compiler

Post by FrankenGraphics »

Hm, maybe ¤ was used a bit more in business or stock trading programs when there was both a 256 character limit and limited screen space.

I remember abc 80 / 800, primarily because those was the first programming manuals i ever read (ABC BASIC). I didn't have access to one such computer, though. Did you know Ericsson made computers and even laptops? They had stylish but presumably(?) eye troubling monochrome screens in red phosphor.

As for a somewhat more casual example of using |, i used it quite a lot on the previous page in this very thread. :lol:
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: CC65 compiler

Post by tepples »

Oziphantom wrote:System >> Advanced System Settings >> click on Environment Variables button on the first pane. This is the same dialog in Windows 10 as in XP ;) if you are on 98/95 you might need to hunt for it...
Except Windows 10 changed it: it's no longer semicolon separated but instead allows choosing individual folders.
Personally I just added one folder PathStuff to it and I just put what I want on the path into it, saves the hassle each time.
Analogous to what I do on Linux in ~/.local/bin.
Also in English we never use {} [] or # @ < > either
Until you're writing a blog, forum, or wiki contribution. HTML, BBCode, MediaWiki, and Markdown use those characters precisely because English itself does not, except for square brackets to indicate that a quotation has been altered.

The difference between /x/ and [x] in phonology is that /x/ represents a phonemic transcription and [x] a phonetic one. A phoneme is a set of sounds considered equivalent in speech. A phonemic transcription uses one symbol for each phoneme; a phonetic transcription specifies which particular sound is used in each case.
User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

Re: CC65 compiler

Post by cpow »

slobu wrote:I'd suggest checking out NESICIDE which is a pre-configured C IDE for NES development.
https://sites.google.com/site/nesicideproject/

I'd compile some of the examples on the NESICIDE web page to get the hang of things.
I'm not maintaining [and should remove, I suppose] the NESICIDE distributions at this site.
I'm ultimately going to host them on my own server:
https://knob.phreneticappsllc.com/nesicide/
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: CC65 compiler

Post by tepples »

If you're maintaining the issues on GitHub, could you maintain the releases on GitHub as well?
User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

Re: CC65 compiler

Post by cpow »

tepples wrote:If you're maintaining the issues on GitHub, could you maintain the releases on GitHub as well?
I could do it manually, I guess. But I'd prefer to have it be automated and in order to do that I need some way to log in to github without having to commit my login credentials. :roll: At least, that is my understanding of reading through their REST API.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: CC65 compiler

Post by tepples »

I think the idea is that you'd key in your login credentials the same way you key them in when you git push. Or you'd store them in an environment variable.
User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

Re: CC65 compiler

Post by cpow »

tepples wrote:I think the idea is that you'd key in your login credentials the same way you key them in when you git push. Or you'd store them in an environment variable.
Agreed. But that means I can't really have Travis do it for me.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: CC65 compiler

Post by tepples »

Google travis ci make release brought me "GitHub Releases Uploading".

Oh, now I see the problem: It'd end up adding the OAuth key to .travis.yml, and even though it "creates and encrypts a GitHub oauth token" (my emphasis), the page isn't quite clear as to who holds the decryption key for this encrypted token.
User avatar
dude3585
Posts: 39
Joined: Mon Sep 05, 2016 3:33 pm
Location: US

Re: CC65 compiler

Post by dude3585 »

Little outdated topic sorry but following nesdoug's tutorial and I cant it to compile correctly. Getting this error. I left the .asm file blank as I dont know what code to test because Im still learning. Tried a few examples at his site but get errors with the .asm also. Not sure why Im having such a issue compiling. Any help would be great. Thanks :)

Code: Select all

ld65: Warning: NROM.cfg(76): Segment `HEADER' does not exist
ld65: Warning: nrom.cfg(76): Segment `STARTUP' does not exist
ld65: Warning: nrom.cfg(76): Segment `VECTORS' does not exist
ld65: Warning: nrom.cfg(76): Segment `CHARS' does not exist
ld65: Warning: nrom.cfg(76): Segment `ONCE' does not exist
Post Reply