nesdev.com
http://forums.nesdev.com/

First release of Noism (a hll)
http://forums.nesdev.com/viewtopic.php?f=2&t=16022
Page 1 of 1

Author:  strat [ Sat Jun 03, 2017 11:20 am ]
Post subject:  First release of Noism (a hll)

Some years ago I proposed a high-level, compiled language for 6502 dubbed "Noism."
viewtopic.php?f=2&t=9143 (the spec in the op is outdated)

Now I've finally turned it from No Man's Ism (was that joke worth the wait) into a working (but not finished) product. And with a sample BCD calculator program to show it off. All the working syntax is in the demo file. Requires Python (2.7) and ca65. (also check the readme).

Please post here or PM if you get a Python error or faulty asm and include the Noism file. Haven't tested on Python 3.0.

Attachments:
noism_alpha.zip [63.87 KiB]
Downloaded 64 times

Author:  slobu [ Mon Jun 05, 2017 5:40 am ]
Post subject:  Re: First release of Noism (a hll)

Very much excited to use a higher level language for NES dev. Hopefully my ignorant, confused questions will provide some useful feedback.

I installed Python 2.7.12 (32-bit) https://www.python.org/downloads/release/python-2712/
I installed cc65 http://cc65.github.io/cc65/
I added C:\Python27 to the PATH
I unzipped the noism files into a new folder called C:\noism

Tried to build bcdcalc.noi with this result:

Code:
C:\noism>build bcdcalc.noi

C:\noism>set ARF=C:\noism

C:\noism>echo C:\noism
C:\noism

C:\noism>call python noism.pyc bcdcalc.noi.noi
Traceback (most recent call last):
  File "noism.py", line 265, in <module>
  File "noism.py", line 55, in main
  File "C:\Users\homedrew\Desktop\bkup\self\noism3\compile.py", line 43, in __init__
IOError: [Errno 2] No such file or directory: 'bcdcalc.noi.noi'

C:\noism>cd ../cc65/bin

C:\cc65\bin>call ca65 --cpu 6502 -I C:\noism C:\noism/bcdcalc.noi.asm -o C:\noism/bcdcalc.noi.o
Fatal error: Cannot open input file `C:\noism/bcdcalc.noi.asm': No such file or directory

C:\cc65\bin>call ld65 -C C:\noism/config.cfg --obj-path C:\noism -o C:\noism/bcdcalc.noi.nes C:\noism/bcdcalc.noi.o
ld65: Error: Input file `C:\noism/bcdcalc.noi.o' not found

C:\cc65\bin>cd C:\noism
C:\noism>


Definetly interested in a Windows executable. Cobbling together the requirements (ca65 or cc65? Python versions, etc..) may also be a hiccup for novices.

Author:  strat [ Mon Jun 05, 2017 5:55 am ]
Post subject:  Re: First release of Noism (a hll)

Forgot to mention:

build bcdcalc

The build file appends the .noi extension.

Author:  slobu [ Mon Jun 05, 2017 6:02 am ]
Post subject:  Re: First release of Noism (a hll)

Argh! Thanks for the second pair of eyes. I let autocomplete botch things (even though I read through the build.bat file)

Ran resulting bcdcalc.nes in FCEUX without issue.

Author:  nesrocks [ Mon Jun 05, 2017 9:22 am ]
Post subject:  Re: First release of Noism (a hll)

Your batch wasn't working for me, so I reduced it for testing. I copied the ca65.exe and ld65.exe to the same folder and made the batch like this:
Code:
PATH=C:\Python27
python noism.pyc test.noi
ca65 --cpu 6502 -i test.asm -o test.o
ld65 --obj test.o -o test.nes -C config.cfg

pause

After reducing everything to the max and it still not working I started doing random tests, until I found out that the "no input files" error was because of the -I. When I made it -i it compiled the nes rom.

By the way, you don't need to use the "call" command. That is only needed for when executing other batch files from within a batch file.

Is there a recommended text editor with syntax highlighting that is compatible with noism?

Author:  tepples [ Mon Jun 05, 2017 1:22 pm ]
Post subject:  Re: First release of Noism (a hll)

Why .pyc and not .py? I don't know how to make a patch against a .pyc.

And why "distributed free of charge for non-commercial purposes"? What do you consider "commercial purposes"? For example, are you against the practice of distributing copies of a game on cartridge for a fee? Or do you want your cut of said fee?

Author:  slobu [ Mon Jun 05, 2017 1:48 pm ]
Post subject:  Re: First release of Noism (a hll)

tepples wrote:
Why .pyc and not .py? I don't know how to make a patch against a .pyc.

And why "distributed free of charge for non-commercial purposes"? What do you consider "commercial purposes"? For example, are you against the practice of distributing copies of a game on cartridge for a fee? Or do you want your cut of said fee?


Oh, poop. I didn't see where the license was. This detail greatly effects me as I publish and sell some of my games. Left a salaried job to do so.

Author:  pubby [ Tue Jun 06, 2017 4:24 pm ]
Post subject:  Re: First release of Noism (a hll)

Can you post some example Noism code showing off the features?

Author:  strat [ Thu Jun 08, 2017 2:40 pm ]
Post subject:  Re: First release of Noism (a hll)

Thanks everyone for your interest. I made an example Noism file that walks through the basic syntax and a text highlighter for Notepad++ (where I do most of my work).

Tepples: Noism might as well be open src because pyc readily decompiles back to the original Python code. But I want to clean it up before putting out a proper open src version.

As to my plans for Noism itself I'll address that in a PM to those who asked.

Attachments:
highlight_example.zip [2.5 KiB]
Downloaded 33 times

Page 1 of 1 All times are UTC - 7 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/