Jump to content
IGNORED

Strange error with APE and spartaDOSx


Recommended Posts

I'm constantly getting strange read errors at irregular intervals in APE when using it with a real 130XE on SpartaDOSx (Lotharek's SIDE2 cartridge)

" ** PC-MIRROR Unrecognized read (Try MyDos or Atari DOS) ** "

 

 

post-33401-0-18534000-1438202034_thumb.jpg

 

I never encountered something like that before. This is the first time I'm coding for use with SpartaDOSx though.

My code is using CIO as usual. Is there something I have do do differently with SpartaDOSx?

 

Here's the disk reading routine of my code. I'm loading in a Windows BMP file one line at a time.

What's wrong with that?

 

Thanks for your help!

 

.

.

.

;---------------------------------------
load_raw ; load one raw line with 3*bmp_xsize bytes
lda #<rawline
sta dest
lda #>rawline
sta dest+1

lda bmp_xsize
sta value1
lda bmp_xsize+1
sta value1+1

lda #3
sta value2
lda #0
sta value2+1

jsr mult16
lda result
sta lenlo
lda result+1
sta lenhi

jsr bget ; load raw line

rts
;-------------------------------------
;#################################
; GENERIC BGET ROUTINE
;#################################
;
; Bget Routine - load data block
;
;Parameters:
;DEST
;LENLO/LENHI
;
BGET ; bget routine
LDX #diskread_chan ;Channel 1
;
LDA #7 ; Command: get characters
STA ICCMD,X
;
LDA DEST ; Destination
STA ICBAL,X ; where to load
LDA DEST+1 ; stuff
STA ICBAH,X
;
LDA LENLO ; LENGTH
STA ICBLL,X ; of data block
LDA LENHI ; to read
STA ICBLH,X
;
JSR CIOV
;
RTS

Edited by bugbiter
Link to comment
Share on other sites

Hmm.. So it is not my fault.

I have never seen that error with sdx before. This is the first time I am using one mirror for read and one for write. Maybe that triggers it.

Will use Aspeqt and see if it has the same problem with sdx.

Link to comment
Share on other sites

  • 6 months later...

Hi Guys,

 

for my BGP Picture converter assembler version I would like to be able to use a real Atari with a mirrored folder in APE. (using Atari DOS, as SDX has serious issues in combination with APE, see above)

 

The converter runs fine in emulation, also on a real atari with a 1050 drive but I have problems with real Iron and APE.

 

During the conversion, my code first writes the Brightness values in one tmp file and Hue values into another. Both files are being filled up simultaneously.

After that the two temporary files are being unified into the final BGP picture file.

 

Sadly however, APE seems to fail writing to two files open at one time. One is ok and the other is empty.

 

For this reason I changed my code so that the Brightnes and Hue values get written to only one single tmp file.

 

Strangely, now even the write to one file doesn't work right. (although in the first version one of two files was written correctly)

 

The bad thing is that I cannot reproduce the failure in emulation, so I don't know what's going on.

 

My latest theory is that APE always has a problem with the write channel that has been opened last, so I would introduce a dummy open write file which has the only purpose of attracting the evil bug spirits to itself.. :-)

 

 

Edit: dummy write file open doesn't prevent the malfunction, I'll try around with different IOCB channel orders ...

 

Any help on the topic of APE write instances with ATARI DOS 2.5 is much appreciated...

Edited by bugbiter
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...