Re: [cc65] Why does this work in 128 mode but not 64 mode?

From: Mark J. Reed <markjreed1mail.com>
Date: 2010-05-01 17:56:34
>
> * On Fri, Apr 30, 2010 at 08:18:06AM -0500 Payton Byrd wrote:
> >        The computer completely freezes when calling cbm_write, it's
> impossible
> >    for me to check anything at that point.  According to the C64 PRG, the
> >    call to OPEN should have set an error code of 5 as its return value.
>

Sorry for the bad assumption, then.

Frédéric Brière via Spiro:

>
> > That's because the C64 has the same bug that was present in the module;
> > it does not check the result of the call at $EDC9 before proceeding with
> > the talker-listener reversal.
>
> Thus, this can be considered as a bug of the C64 KERNAL. The C128 has
> this fixed. The VIC20 KERNAL behaves the same as the C64.
>

Yes, I was about to post that I'd confirmed this as a bug in the C64 KERNAL
code, in both a physical C128 in 64 mode and  VICE (which dumped core).

As I believe other people might have problems: Uz, is it worth to add a
> work-around to the cbm I/O runtime library?


I vote yes.  It's pretty safe to assume that any code targeted for the C64
and VIC20 will be running on the buggy KERNAL.

-- 
Mark J. Reed <markjreed@gmail.com>

----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo@musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.
Received on Sat May 1 17:56:44 2010

This archive was generated by hypermail 2.1.8 : 2010-05-01 17:56:47 CEST