It is currently Sun Nov 17, 2019 3:01 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 8 posts ] 
Author Message
PostPosted: Sat Jul 06, 2019 9:02 am 
Offline

Joined: Sat Jul 06, 2019 8:59 am
Posts: 3
I'm not talking about the SMB3 disassembly used to create SMB3Mix, I mean this https://gist.github.com/1wErt3r/4048722

Anyways, I tried to compile this with NESASM3 but look what happens, a truckload of errors pop up.
Why is this?

Quote:
Operand missing!
3180 00:9436 asl
Operand missing!
3181 00:9436 asl
Operand missing!
3192 00:944B asl ;multiply by three (shift to left and add result to old one)
Operand missing!
3196 00:9450 lsr
Operand missing!
3197 00:9450 lsr
Operand missing!
3198 00:9450 lsr
Operand missing!
3199 00:9450 lsr
Operand missing!
3236 00:94A2 asl ;multiply by 2 and use as yet another offset
Operand missing!
3278 00:9502 asl
Operand missing!
3279 00:9502 rol ;make %xx000000 into %000000xx
Operand missing!
3280 00:9502 rol
Operand missing!
3319 00:953F asl ;check for page select bit (d7), branch if not set
Operand missing!
3435 00:9641 MoveAOId: lsr ;move d6-d4 to lower nybble
Operand missing!
3436 00:9641 lsr
Operand missing!
3437 00:9641 lsr
Operand missing!
3438 00:9641 lsr
Operand missing!
3463 00:967C lsr
Operand missing!
3464 00:967C lsr
Operand missing!
3465 00:967C lsr
Operand missing!
3466 00:967C lsr
Operand missing!
3554 00:9708 lsr ;move bits to lower nybble and store
Operand missing!
3555 00:9708 lsr ;as new background scenery bits
Operand missing!
3556 00:9708 lsr
Operand missing!
3557 00:9708 lsr
Operand missing!
3658 00:97B3 lsr
Operand missing!
4165 00:9B50 sty Enemy_Y_HighPos,x ;store vertical high byte
Incorrect addressing mode!
4236 00:9BC5 asl ;multiply by 16 to get size of whirlpool
Operand missing!
4237 00:9BC5 asl ;note that whirlpool will always be
Operand missing!
4238 00:9BC5 asl ;two blocks bigger than actual size of hole
Operand missing!
4239 00:9BC5 asl ;and extend one block beyond each edge
Operand missing!
4308 00:9C30 asl ;to obtain horizontal pixel coordinate
Operand missing!
4309 00:9C30 asl
Operand missing!
4310 00:9C30 asl
Operand missing!
4311 00:9C30 asl
Operand missing!
4318 00:9C34 asl
Operand missing!
4319 00:9C34 asl ;this will give us the proper vertical pixel coordinate
Operand missing!
4320 00:9C34 asl
Operand missing!
4321 00:9C34 asl
Operand missing!
4330 00:9C38 .db <Block_Buffer_1, <Block_Buffer_2
Syntax error in expression!
4331 00:9C38 .db >Block_Buffer_1, >Block_Buffer_2
Syntax error in expression!
4335 00:9C39 lsr ;move high nybble to low
Operand missing!
4336 00:9C39 lsr
Operand missing!
4337 00:9C39 lsr
Operand missing!
4338 00:9C39 lsr
Operand missing!
4365 00:9C60 asl
Operand missing!
4366 00:9C60 rol
Operand missing!
4367 00:9C60 rol
Operand missing!
4368 00:9C60 rol ;make %0xx00000 into %000000xx
Operand missing!
4418 00:9CC5 lsr ;shift bits over to LSBs
Operand missing!
4419 00:9CC5 lsr
Operand missing!
4420 00:9CC5 lsr
Operand missing!
4425 00:9CCC rol ;rotate bits over to LSBs
Operand missing!
4426 00:9CCC rol
Operand missing!
4427 00:9CCC rol
Operand missing!
4437 00:9CDD lsr
Operand missing!
4438 00:9CDD lsr ;shift bits to LSBs
Operand missing!
4439 00:9CDD lsr
Operand missing!
4440 00:9CDD lsr
Operand missing!
4445 00:9CE4 rol ;rotate bits over to LSBs
Operand missing!
4446 00:9CE4 rol
Operand missing!
4447 00:9CE4 rol
Operand missing!
4493 00:9D32 .db <E_CastleArea1, <E_CastleArea2, <E_CastleArea3, <E_CastleArea4, <E_CastleArea5, <E_CastleArea6
Syntax error in expression!
4494 00:9D32 .db <E_GroundArea1, <E_GroundArea2, <E_GroundArea3, <E_GroundArea4, <E_GroundArea5, <E_GroundArea6
Syntax error in expression!
4495 00:9D32 .db <E_GroundArea7, <E_GroundArea8, <E_GroundArea9, <E_GroundArea10, <E_GroundArea11, <E_GroundArea12
Syntax error in expression!
4496 00:9D32 .db <E_GroundArea13, <E_GroundArea14, <E_GroundArea15, <E_GroundArea16, <E_GroundArea17, <E_GroundArea18
Syntax error in expression!
4497 00:9D32 .db <E_GroundArea19, <E_GroundArea20, <E_GroundArea21, <E_GroundArea22, <E_UndergroundArea1
Syntax error in expression!
4498 00:9D32 .db <E_UndergroundArea2, <E_UndergroundArea3, <E_WaterArea1, <E_WaterArea2, <E_WaterArea3
Syntax error in expression!
4501 00:9D32 .db >E_CastleArea1, >E_CastleArea2, >E_CastleArea3, >E_CastleArea4, >E_CastleArea5, >E_CastleArea6
Syntax error in expression!
4502 00:9D32 .db >E_GroundArea1, >E_GroundArea2, >E_GroundArea3, >E_GroundArea4, >E_GroundArea5, >E_GroundArea6
Syntax error in expression!
4503 00:9D32 .db >E_GroundArea7, >E_GroundArea8, >E_GroundArea9, >E_GroundArea10, >E_GroundArea11, >E_GroundArea12
Syntax error in expression!
4504 00:9D32 .db >E_GroundArea13, >E_GroundArea14, >E_GroundArea15, >E_GroundArea16, >E_GroundArea17, >E_GroundArea18
Syntax error in expression!
4505 00:9D32 .db >E_GroundArea19, >E_GroundArea20, >E_GroundArea21, >E_GroundArea22, >E_UndergroundArea1
Syntax error in expression!
4506 00:9D32 .db >E_UndergroundArea2, >E_UndergroundArea3, >E_WaterArea1, >E_WaterArea2, >E_WaterArea3
Syntax error in expression!
4512 00:9D36 .db <L_WaterArea1, <L_WaterArea2, <L_WaterArea3, <L_GroundArea1, <L_GroundArea2, <L_GroundArea3
Syntax error in expression!
4513 00:9D36 .db <L_GroundArea4, <L_GroundArea5, <L_GroundArea6, <L_GroundArea7, <L_GroundArea8, <L_GroundArea9
Syntax error in expression!
4514 00:9D36 .db <L_GroundArea10, <L_GroundArea11, <L_GroundArea12, <L_GroundArea13, <L_GroundArea14, <L_GroundArea15
Syntax error in expression!
4515 00:9D36 .db <L_GroundArea16, <L_GroundArea17, <L_GroundArea18, <L_GroundArea19, <L_GroundArea20, <L_GroundArea21
Syntax error in expression!
4516 00:9D36 .db <L_GroundArea22, <L_UndergroundArea1, <L_UndergroundArea2, <L_UndergroundArea3, <L_CastleArea1
Syntax error in expression!
4517 00:9D36 .db <L_CastleArea2, <L_CastleArea3, <L_CastleArea4, <L_CastleArea5, <L_CastleArea6
Syntax error in expression!
4520 00:9D36 .db >L_WaterArea1, >L_WaterArea2, >L_WaterArea3, >L_GroundArea1, >L_GroundArea2, >L_GroundArea3
Syntax error in expression!
4521 00:9D36 .db >L_GroundArea4, >L_GroundArea5, >L_GroundArea6, >L_GroundArea7, >L_GroundArea8, >L_GroundArea9
Syntax error in expression!
4522 00:9D36 .db >L_GroundArea10, >L_GroundArea11, >L_GroundArea12, >L_GroundArea13, >L_GroundArea14, >L_GroundArea15
Syntax error in expression!
4523 00:9D36 .db >L_GroundArea16, >L_GroundArea17, >L_GroundArea18, >L_GroundArea19, >L_GroundArea20, >L_GroundArea21
Syntax error in expression!
4524 00:9D36 .db >L_GroundArea22, >L_UndergroundArea1, >L_UndergroundArea2, >L_UndergroundArea3, >L_CastleArea1
Syntax error in expression!
4525 00:9D36 .db >L_CastleArea2, >L_CastleArea3, >L_CastleArea4, >L_CastleArea5, >L_CastleArea6
Syntax error in expression!
4695 00:A006 .db $7b, $80, $ae, $00, $80, $8b, $8e, $e8, $05, $f9, $86
Bank overflow, offset > $1FFF!
# 173 error(s)


Top
 Profile  
 
PostPosted: Sat Jul 06, 2019 9:11 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 21695
Location: NE Indiana, USA (NTSC)
Unlike with C, there's no standard syntax for assembler directives. Each assembler has its own peculiarities, such as how to set the origin for absolute addresses in a piece of code; how to include data that is not executable code; how to unroll loops; whether or not to require explicit A for ASL, LSR, ROL, and ROR; and the like.

This disassembly may not be meant for NESASM3. Have you tried it in something different like ASM6?

_________________
Pin Eight | Twitter | GitHub | Patreon


Top
 Profile  
 
PostPosted: Sat Jul 06, 2019 9:15 am 
Offline

Joined: Sat Jul 06, 2019 8:59 am
Posts: 3
tepples wrote:
This disassembly may not be meant for NESASM3. Have you tried it in something different like ASM6?


Well, It says that it's for NESASM3


Top
 Profile  
 
PostPosted: Sat Jul 06, 2019 9:21 am 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 7631
Location: Canada
joshuarpl wrote:
Well, It says that it's for NESASM3

No, it says "Assembles with x816".

Unfortunately that's a bit of an old assembler that's fallen out of favour. I'm not really sure if there's a current version of it. The best I can find at the moment is this DOS version from 2013.


Top
 Profile  
 
PostPosted: Sat Jul 06, 2019 9:23 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 21695
Location: NE Indiana, USA (NTSC)
X816 is being rebuilt as YMAS, which was last updated a month ago.

_________________
Pin Eight | Twitter | GitHub | Patreon


Top
 Profile  
 
PostPosted: Sat Jul 06, 2019 10:43 am 
Offline
User avatar

Joined: Fri May 08, 2015 7:17 pm
Posts: 2597
Location: DIGDUG
I believe it assembles with only slight modification with asm6.

You do need to get the CHR ROM from somewhere, and incbin it after the vectors.

_________________
nesdoug.com -- blog/tutorial on programming for the NES


Top
 Profile  
 
PostPosted: Mon Jul 08, 2019 1:58 am 
Offline

Joined: Tue Oct 16, 2018 5:46 am
Posts: 101
Location: Gothenburg, Sweden
dougeff wrote:
I believe it assembles with only slight modification with asm6.

You do need to get the CHR ROM from somewhere, and incbin it after the vectors.

I can verify this and post my version that's been edited for asm6, though I would recommend joshuarpl instead take this as a learning exercise.


Top
 Profile  
 
PostPosted: Sat Jul 27, 2019 11:36 am 
Offline

Joined: Tue Apr 05, 2005 7:30 pm
Posts: 184
If you take out the .index and .mem directives above the .org directive, you should be able to get it to assemble on asm6 without any other modifications. x816 used those because it was actually a 65816 assembler, and those two directives were used to tell the assembler how big the immediate operands are supposed to be. But x816 won't run on 64-bit Windows unless you are using DOSBox, so go ahead and take out those two directives.

_________________
Be whatever the situation demands.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 18 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group