From: Johan Kotlinski (johan_at_littlesounddj.com)
Date: 2003-12-17 00:20:43
Hi Uz! > On Tue, Dec 16, 2003 at 01:44:46AM +0100, Johan Kotlinski wrote: > > I have a problem with saving to 1541, however. When saving to a file the > > first time, everything works great. But the second time I call my routine, it > > just doesn't work. I checked the archives and found out that someone had the > > This is not a cc65 problem, but a CBM problem. You will have to scratch the > file before writing it, otherwise you may get a "file exists" error. Well, I tried scratching aswell, but the same problem... Then I tried writing it in assembler, and it worked. So this suggests there is a problem with the wrapper after all. If you are interested, here are the two (in my eyes equavilent) routines... Assembler (WORKING): _sub_save_hiscores: SEI LDA #1 LDX #8 LDY #$F JSR $FFBA LDA #$12 LDX #<filename_start ; points to "@:KIDGRID_HISCORES" LDY #>filename_start JSR $FFBD LDA #$90 STA $FB LDA #$11 STA $FC LDA #$fb LDX #$44 LDY #$12 JSR $FFD8 CLI RTS C (won't work): void save_highscores() { __asm__ ("\tsei"); cbm_open(1,8,15,"@:KIDGRID.HISCORES"); cbm_write(1,(char*)0x1190,180); cbm_close(1); __asm__ ("\tcli"); } Regards, Johan ---------------------------------------------------------------------- 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 : 2003-12-17 00:21:45 CET