Attention to Internet Explorer users: ROHM website does not recommend browsing in IE 11. Please use latest browser to ensure the best performance on ROHM website.
I have a question about the description example of one of the programs described in Section 2.1 "Program Creation" of MACU8 Assembler Package User's Manual. What does the instruction "29: BAL $" mean? Also, I have another question. I checked the Bcond instruction and have found out that the BAL instruction is unconditional, so I am assuming that it is always true. Which address does specifying "$" jump to?
"29: BAL $" means jumping to the address where the BAL instruction is located. (Execution of this instruction results in an infinite loop.) The symbol "$" is a location counter symbol, indicating the address of a logical segment (such as the CODE segment). For example, when the BAL instruction is located at address 100H, the value of "$" is address 100H. Therefore, "BAL $" means "BAL 100H". For details on the location counter, please refer to Section 2.5 "Location Counter" of MACU8 Assembler Package User's Manual.