[comp.sys.amiga] Trouble with trackdisk

ditto@cbmvax.UUCP (Michael "Ford" Ditto) (12/06/88)

This article is a perfect example of something that should have been in
comp.sys.amiga.tech.  I'm redirecting followups there.

In article <3615@crash.cts.com> steelie@pro-charlotte.cts.com (Jim Howard) writes:
>Im working on a little low level drive access, using the exec.library
>SendIo routine to access the disk drive, and read a few tracks
>into memory..
> [ ... ] Anyway,
>here's a short listing of what Im doing.. (pardon my assembly) :-)

No apologies required. :-)  Assembly language programming is a mostly
respectable practice in these parts, but It would be much less painful
to read & debug if you used the system header files, etc. instead of
decimal constants to index into structures and libraries!

(I don't feel like verifying any of these hard-coded offsets, so if
your problem is in there you won't find out from me.  Please don't
be offended by my complaints about your style; I'm just saying that
it's not ideal for asking other people to read.)

[ ... ]
>        move    #2,28(a1)               ;command RW_READ 
>        move.l  #4*512*11*2,36(a1)      ;length of data  (4 tracks)
>        move.l  #$40000,40(a1)          ;buffer for data
>        move.l  #0,44(a1)               ;Offset for start of read in bytes
>        jsr     -462(a6)                ;_LVOSendIo  (read it in!)
[ ... ]

>Now, the problem lies that the WaitIo routine never returns..

Are you very, very, sure that there is 44K of unused memory at 0x40000?
If your program or part of Exec or trackdisk.device happens to be in
that area, the result could easily be exactly what you describe.  Does
the whole system freeze, or just your task?

Well, that's the only thing that sticks out when I look at it.
-- 
					-=] Ford [=-

"The number of Unix installations	(In Real Life:  Mike Ditto)
has grown to 10, with more expected."	ford@kenobi.cts.com
- The Unix Programmer's Manual,		...!sdcsvax!crash!elgar!ford
  2nd Edition, June, 1972.		ditto@cbmvax.commodore.com