From: Ullrich von Bassewitz (uz_at_musoftware.de)
Date: 2002-11-28 13:17:51
Hi! On Thu, Nov 28, 2002 at 02:26:47AM +0100, Groepaz wrote: > mayb UZ can tell us.... As far as I can tell, most things are not possible using ca65. However, the stuff shown seems rather complex and the use of .reloc/.org in the macro suggests to me that the user has problems with the concepts behind ca65. Which leads me to the assumption that there may be a simpler solution to the original problem. But I may also be wrong here. > > - write Lo/Hi byte of * and the label __THIS_BANK__ to 3 seperate segments > > works fine too I would advise not to use labels starting with two underscores, because these may be used by some implementation detail. See the .LOCAL command in the docs for an example. > > - I switched the segment, but at the end of the macro the old value should > > be restored. But how do I read the name of the current segment? > > Should be like: > > temp_var = .current_segment > > ...switch segments around... > > .segment temp_var or maybe .segment .string(temp_var) This sounds useful, but is not possible. > > And another problem: I'm using label redefinition for a enum replacement or > > passing args between two macros ( e.g. End_Blah need a value defined in > > Start_Blah). How can I do this with ca65? Depends somewhat on the application. One way would be to use a local scope around the whole and just use normal symbols: .macro Start name, label .proc name label = 1 .endmacro .macro End label .byte label .endproc .endmacro Regards Uz -- Ullrich von Bassewitz uz_at_musoftware.de ---------------------------------------------------------------------- To unsubscribe from the list send mail to majordomo_at_musoftware.de with the string "unsubscribe cc65" in the body(!) of the mail.
This archive was generated by hypermail 2.1.3 : 2002-11-28 13:17:57 CET