Page 1 of 1

NESHLA Issues

Posted: Tue Mar 15, 2011 8:38 pm
by ManicGenius
I am in the process of porting over the Famitone code again, this time with NESHLA. I've gotten to the part where I need to basically generate a test piece of music and I've noticed a large large large downside to NESHLA. It seems that I am unable to place arbitrary bytes, and words.

Even less so, you cant seem to have those "static" pointers referencing any sort of label.

Hrm, anyone have a way around this? Having a pre-assembled music binary file from CA65 output isn't really viable as the famitone format relies on pointers to loops buried inside it. Take those out of their element and kerblooey.

Examples:

Valid

Code: Select all

byte someRandomVariableSet[] = { $00, $01, $02, $03 }
Invalid

Code: Select all

pointer someRandomPointers[] = { loop1, loop2, loop3 }
byte $01
Oddest part is that it actually sort of gets there but just complains of the variables not being integers. Maybe NESHLA just wasn't fully fleshed out?

Either way, with my experience so far I'm 90% likely to go back to CA65.

Posted: Wed Mar 16, 2011 4:48 am
by Wave

Code: Select all

pointer a[] ={la,lb}

la:
lb:
That seems to work fine.
The arbitrary data, I don't think it can be placed without a variable name.

Code: Select all

pointer someRandomPointers[] = { loop1, loop2, loop3 }
byte someRandomPointers_postdata = $01 

Posted: Wed Mar 16, 2011 9:25 am
by ManicGenius
Was trying to avoid the regular labels like that. NESHLA doesn't seem to handle them well. Also runs into problems I've noticed hex editing where it'll assemble successfully, but will have incorrect values.