home Asteroids | Donkey Kong | Duck Hunt | Frogger | Moon Patrol | Pacman | Pong | Simon | Space Invaders | StarCastle | Tertis

1986
                   
1987
1988
1989
2000
2001
2002
2003
2004
2006
   

Home

Asteroids | Donkey Kong | Duck Hunt | Frogger | Moon Patrol | Pacman | Pong | Simon | Space Invaders | StarCastle | Tertis

Date: 1987-07 atari800xl.org comp.sys.atari.8bit
1050 Disk Drive diagnostics disk needed  
 
1.  Mike McPeak  
 More options Jul 4 1987, 1:05 am
Newsgroups: comp.sys.atari.8bit
From: m@molihp.UUCP (Mike McPeak) -
Date: Fri, 3-Jul-87 12:05:46 EDT
Local: Sat, Jul 4 1987 1:05 am
Subject: 1050 Disk Drive diagnostics disk needed
| | | | | | |
HELP!!!!!!!!!!!!!!!

        I am in need of an Atari 1050 disc drive diagnostics diskette. I
am told by the local dealers here in Vancouver that this is an item not
available to the general public. Is this so?????? Last August I took my
drive in to a local shop to be repaired and was charged $50 to replace
a 98 cent ram chip. Now I know these guys have to make a living, but
that is a little pricey.

Anyhow the drive sat around for 6 months with no use at all. Hey, I was busy....
Recently I recieved Paperclip and have begun to use the 8 bit wonder again,
and to my dismay I find that the drive does not write to the disc properly.
I called these guys and they say that they check everything before the
drives go out and of course they have a one month warranty, everybody does,
don't they???? Oh yes they will gladly look at it again for $25 minimum.

Being a technician myself, and having already gotten a hold of the schematics,
you can see my dilemma. I would appreciate any help in this regard. Meanwhile,
I think I will write a letter to Atari about the rep in question, as I am
told that this is a common occurrance at this store.

------
Mike McPeak                             m@molihp.UUCP
Moli Energy Ltd                         ...!ubc-vision!molihp!mikey
Burnaby BC CANADA


 
 
2.  Marc L. Appelbaum  
 More options Jul 6 1987, 9:29 pm
Newsgroups: comp.sys.atari.8bit
From: appel@topaz.rutgers.edu (Marc L. Appelbaum) -
Date: Mon, 6-Jul-87 08:29:31 EDT
Local: Mon, Jul 6 1987 9:29 pm
Subject: Re: 1050 Disk Drive diagnostics disk needed
| | | | | | |

I believe B&C Computer Visons in Calif. has them for sale. Look in
either ANTIC or ANALOG for their ad.
--
 -Marc L. Appelbaum                            
 Arpa:appel@topaz.rutgers.edu                
 Uucp:{ames, cbosgd, harvard, moss, seismo}!rutgers!topaz.rutgers.edu!appelbau
 Bitnet:appelb@zodiac.bitnet
 GEnie:M.APPELBAUM


 
BASIC USR FUNC IN ACTION!  
 
1.  Richard Curzon KAO4-3/7A DTN 621-2196  
 More options Jul 7 1987, 3:48 am
Newsgroups: comp.sys.atari.8bit
From: cur@kaoa01.dec.com (Richard Curzon KAO4-3/7A DTN 621-2196) -
Date: Mon, 6-Jul-87 14:48:41 EDT
Local: Tues, Jul 7 1987 3:48 am
Subject: BASIC USR FUNC IN ACTION!
| | | | | | |

    I tried submitting this before, but it never got through.... as far
as I know!  If this is the second time you've seen this, somebody please
send me mail to stop the flood ;-)
-----------------------------------------------------------------------

    One downer for programmers upgrading to Action! from from BASIC, is
that machine code subroutines they may have been using in BASIC can't
usually be called from Action!  That is because they pass parameters
differently.  Basic pushes parameters of the USR call onto the stack, so
that machine lang routines must pull them off as they need them.  Action
passes parameters in the 6502 registers, and in memory locations in page
0.

    Since there are a couple of good BASIC subroutine packages I
know of, I figured out a generic way to call them from Action.
Results were very good so I am passing them on here for Action users.

    Below are a couple of Action demos, one calling MWINDOWS, a
utility for opening successive "windows" in a graphics 0 screen; and
one calling GUP, the Graphic Utilities Package with lots of graphics
goodies.  Both can be found in most User Group libraries, if you
don't have them.  

    For use with Action, you have to ensure that the machine code
routine is in memory when you compile and run the "caller".  As with
BASIC, you could call them AUTORUN.SYS with Atari DOS.  If using
SpartaDos or DOS XL, you just invoke them before going to the Action
cartridge.

    Unlike BASIC's USR function, the CALL routine needs the number of
parameters specified.  However, this can be hidden in DEFINE statements
as in these examples. Then the CALL from Action looks virtually
identical to the USR function in the BASIC examples in the original
magazine articles.  It might be useful to have the magazine article to
refer to.  The value (if any) returned by the Basic USR function can
be found in "CARD usrval = $D4" as shown below.

    Aside from saving you a lot of Action! programming, using these
utilities in object code form saves you from symbol name conflicts, and
saves space in your Action! symbol table.

    I included the Mac/65 assembly listing only so software aficionados
can quickly see the simple logic.  You don't need it for anything.

;---------------- CUT HERE ------------------
;MWINDOWS DEMO IN ACTION

CARD i
BYTE ch = 764, crsinh = 752

MODULE;MWindows setup for Call procedure

DEFINE OpenW="7459,5"
DEFINE CloseW="7826,0"
BYTE fill_char=7625

;Generic Call Procedure

CARD usrval = $D4  ; any value return by
  ; the USR function will be found here

PROC Call=*(CARD code, BYTE pnum,
   CARD p1,p2,p3,p4,p5,p6)
 [$85$E0$8A$85$E1$98$0A$AA$E8$E8$CA
  $CA$CA$30$09$B5$A2$48$E8$B5$A2$48
  $90$F2$98$48$6C$E0$00 ]
RETURN

;Using MWindows

PROC Test()
  BYTE x,y,wid,ht,border
; even though CALL defines its parameters
; as CARD, it will accept BYTE parameters
  crsinh = 1
  ch = 255
  DO
    fill_char = 128  ;display char set
    Call(OpenW,09,6,22,5,1)
    Position(11,7)
    Print("mwindows & Action!") ;all in
    ;            atari inverse graphics
    Position(11,9)
    Print(" ...hit any key.. ") ;inverse
    Position(0,0)
    DO UNTIL ch # 255 OD ch=255
    FOR I = 1 TO 4 DO
      x = Rand(36)  y = Rand(20)
      wid = Rand(37-x)+3
      ht = Rand(21-y)+3
      border = Rand(3)*100
      fill_char = 144+i
      Call (OpenW,x,y,wid,ht,border)
      DO UNTIL ch # 255 OD ch=255
    OD
    FOR I = 1 TO 4 DO
      Call (CloseW)
      DO UNTIL ch # 255 OD ch=255
    OD
    Call(CloseW)
    DO UNTIL ch # 255 OD ch=255
  OD
RETURN

;--------------- CUT HERE ------------------

;GRAPHICS UTILITIES PACKAGE DEMO IN ACTION

CARD i
BYTE ch = 764

CARD usrval = $D4  ; any value return by
  ; the USR function will be found here

PROC Call=*(CARD code, BYTE pnum,
   CARD p1,p2,p3,p4,p5,p6)
 [$85$E0$8A$85$E1$98$0A$AA$E8$E8$CA
  $CA$CA$30$09$B5$A2$48$E8$B5$A2$48
  $90$F2$98$48$6C$E0$00 ]
RETURN

MODULE ;setup for GUP routine Calls

DEFINE Graphics="17467,1"
DEFINE Circle="17182,3"
DEFINE Text="17962,4"
DEFINE C128="17736,2"  ;scroll reg
DEFINE PSet="18216,4"
DEFINE Random="18231,0"
DEFINE Box="16679,4"
DEFINE DrawTo="16752,2";up to 6 parms
DEFINE Line="16780,4"  ;up to 6 parms
DEFINE Plot="18204,2"
BYTE CIRF=17432      ;circle fill flg
BYTE ARRAY Color(4)=16526
BYTE ARRAY SetColor(9)=18272
BYTE lowscr=208 ;allow use of low
                ;screen in gr 8
                ;set to 8 default 0

PROC Test()
  CIRF = 1
  Call(Graphics,15+16)
  Call(PSet,$55,$55,$FF,$FF)
  Call(Circle,080,080,50)
  Call(PSet,$A0,$A0,$F5,$F5)
  Call(Circle,055,055,50)
  Call(PSet,$55,$55,$AA,$AA)
  CIRF = 0
  Call(Circle,120,120,50)
  Call(Text,05,05,"DIGITAL HAS"+1,11)
; string needs +1 offset because
;  of Action string handling
  Call(Text,05,14,"IT NOW!"+1,07)
  Call(C128,200,6)
  Call(C128,200,4)
  Call(Graphics,08+48)
  Call(C128,200,2)  
  Call(Text,05,05,"DIGITAL HAS"+1,11)
  Call(Text,05,14,"IT NOW!"+1,07)
  Call(C128,200,2)
; just for starters!

RETURN

;--------------- CUT HERE ---------------

 CALL ROUTINE source code ... short and sweet

                1000 ;CALL --
                1005 ;ACTION INTERFACE TO MACHINE CODE
                1010 ;SUBROUTINES THAT HAVE BEEN
                1020 ;DESIGNED TO BE CALLED FROM BASIC
                1030 ;
    =00E0       1040 FR1 =   $E0
                1050 ;
                1060 ;*******
                1070 ;LETS GO
                1080 ;*******
0000 85E0       1090     STA FR1     ;ML LO
0002 8A         1100     TXA
0003 85E1       1110     STA FR1+1   ;ML HI
0005 98         1120     TYA         ;NUM OF PARMS
0006 0A         1130     ASL A       ;2 BYTES/PARM
0007 AA         1140     TAX         ;OFFSET REG
0008 E8         1150     INX         ;READY FOR LOOP
0009 E8         1155     INX
000A            1160 PUMP.PARMS
000A CA         1170     DEX
000B CA         1175     DEX
000C CA         1180     DEX
000D 3009       1190     BMI NUM.PARMS
000F B5A2       1200     LDA $A2,X   ;GET LO
0011 48         1210     PHA
0012 E8         1220     INX         ;NOW HI
0013 B5A2       1230     LDA $A2,X   ;GET HI
0015 48         1240     PHA
0016 90F2       1250     BCC PUMP.PARMS
0018            1260 NUM.PARMS
0018 98         1270     TYA         ;NUM OF PARMS
0019 48         1280     PHA
001A 6CE000     1290     JMP (FR1)   ;GO TO SUBR.
                1300 ;*****
                1310 ;NO MO
                1320 ;*****

                                Dick Curzon
                                Digital Equipment of Canada
                                PO Box 13000
                                Kanata Ontario      K2K 2A6
                                Canada.

(DEC E-NET)     KAOA01::CURZON
(UUCP)          {decvax, ucbvax, allegra}!decwrl!kaoa01.dec.com!curzon
(ARPA)          curzon%kaoa01.@decwrl.ARPA


 
Turbo BASIC for the 800 from Ulrich Lang  
 
1.  jhs  
 More options Jul 8 1987, 1:36 pm
Newsgroups: comp.sys.atari.8bit
From: j@MITRE-BEDFORD.ARPA -
Date: Wed, 8-Jul-87 00:36:21 EDT
Local: Wed, Jul 8 1987 1:36 pm
Subject: Turbo BASIC for the 800 from Ulrich Lang
| | | | | | |
Ulrich Lang sent the following message to me which he was having difficulty
getting to info-atari8:
                                        -John Sangster, j@mitre-bedford.arpa
----Forwarded message:------

I have the pd turbo basic interpreter for the Atari 800.
I am currently not able to upload files to our Vax, so i can
not send the file to the people who requested it.

Walt Lazear, could you please send me your adress via e-mail.
I will then send you a floppy via ordinary mail. Perhaps you
can then upload the interpreter to the net. (I was not able
to send a message directly to you, but i received your message
asking for the software.)

I am sorry but i have not received the turbo basic compiler for
the Atari 800 up to now, so i am not able to pass it on.

                                        Ulrich Lang
                                        (Z@DS0RUS51.BITNET)


 
Looking for R-Term device handler  
 
1.  dlh  
 More options Jul 9 1987, 11:39 pm
Newsgroups: comp.sys.atari.8bit
From: d@psueclb.BITNET -
Date: Thu, 9-Jul-87 10:39:15 EDT
Local: Thurs, Jul 9 1987 11:39 pm
Subject: Looking for R-Term device handler
| | | | | | |

     Several years ago, I needed to interface a modem to my
Atari 8-bit. Rather than buying an 850 interface and saving myself
a tremendous amount of trouble, I instead got a device called
the R-Term serial interface. Essentially, it just plugs into the
Atari serial port and converts what is there up to RS-232 signal
levels (and back).
     The problem is that the manufacturer included only a very feeble
device handler for the R-Term that is similar but not identical to
the driver used with the 850. The result is that packages like VT-10^2
and other terminal emulators just don't work very well.
     Has anyone out there come across a device driver for the serial
port that is accessible to the standard terminal emulating programs?

-Dave Hysell
 DLH@PSUECL
 (go lions)


 
Error Checking in Action!  
 
1.  Marc L. Appelbaum  
 More options Jul 11 1987, 12:03 am
Newsgroups: comp.sys.atari.8bit
From: appel@topaz.rutgers.edu (Marc L. Appelbaum) -
Date: Fri, 10-Jul-87 11:03:15 EDT
Local: Sat, Jul 11 1987 12:03 am
Subject: Error Checking in Action!
| | | | | | |

Does anybody have any experience with error checking in Action!?  What
I would like to do is have something similar to a BASIC trap.
Here's a simplified version of my program:

proc getfile (byte array name)
printe("File to read-->")
inputS(name)
return

prom main()
;;varios declatarions, etc
byte array fname
getfile(fname)
;;;other stuff

return

I would to have a error proc that when it finds a error 170 (invalid
file name) or device error it will ask for a new name to be entered.

Any ideas??????

--
 -Marc L. Appelbaum                            
 Arpa:appel@topaz.rutgers.edu                
 Uucp:{ames, cbosgd, harvard, moss, seismo}!rutgers!topaz.rutgers.edu!appelbau
 Bitnet:appelb@zodiac.bitnet
 GEnie:M.APPELBAUM


 
 
2.  Mark Storin  
 More options Jul 13 1987, 2:56 pm
Newsgroups: comp.sys.atari.8bit
From: m@lakesys.UUCP (Mark Storin) -
Date: Mon, 13-Jul-87 01:56:33 EDT
Local: Mon, Jul 13 1987 2:56 pm
Subject: Re: Error Checking in Action!
| | | | | | |
In article <1@topaz.rutgers.edu> appel@topaz.rutgers.edu (Marc L. Appelbaum) writes:

        ACTION! has a built in error routine that can be redirected.  In your
case the simplest method to check for an I/O error is to create a procedure
that is called Myerr (or any such thing).  All this needs to do is to set a
global variable to the error number when called, as in:

        Proc Myerr(Byte err)
          Errnum=err          ;Errnum being the global error variable
        Return

        In your "main" procedure add the following code:

        Card OSERR
        OSERR=Error             ;save pointer to OS error routines
        Error=Myerr             ;Point the error trapping at our routine

        Now, after the user inputs a file name, try to do an open on it, then
check your Errnum variable.  If it's not 0 then there has been an error and
you can check it and procede from there.

        Be sure to reset Error (Error=OSERR) before exiting the program or
else ACTION! won't be able to find its own error handlers.

------------------------------------------------------------------------------
Mark A. Storin                                  These opinions are my own,
Lake Systems, Milw., WI                         you can't have them.
UUCP:  {ihnp4,uwvax}!uwmcsd1!lakesys!mark


 
Atari Bulletin Boards  
 
3.  Jim Ware  
 More options Jul 13 1987, 9:39 pm
Newsgroups: comp.sys.atari.8bit
From: j@ssc.afit.arpa (Jim Ware) -
Date: Mon, 13-Jul-87 08:39:24 EDT
Local: Mon, Jul 13 1987 9:39 pm
Subject: Atari Bulletin Boards
| | | | | | |
Does anyone know where I could get a list of atari BBS's? If anyone has such
a list, would it be possible to mail it to me?

Thanks,

Jim Ware
jware@afit-abemorng


 
Error Checking in Action!  
 
4.  fred sullivan  
 More options Jul 13 1987, 9:31 pm
Newsgroups: comp.sys.atari.8bit
From: sulli@marge.math.binghamton.edu (fred sullivan) -
Date: Mon, 13-Jul-87 08:31:02 EDT
Local: Mon, Jul 13 1987 9:31 pm
Subject: Re: Error Checking in Action!
| | | | | | |
You can redefine the Action! error routine to do whatever you want
it to do.  (Including just ignore errors.)  You may need to know
how to get status for an IOCB to find out what error occurred.  There
is an example of this in the manual, I think under run-time system.

Fred Sullivan
Department of Mathematical Sciences
State University of New York at Binghamton
Email: sulli@marge.math.binghamton.edu
Fred Sullivan
Department of Mathematical Sciences
State University of New York at Binghamton
Email: sulli@marge.math.binghamton.edu


 
this is a test  
 
1.  William "Chops" Westfield  
 More options Jul 11 1987, 8:04 am
Newsgroups: comp.sys.atari.8bit
From: B@SCORE.STANFORD.EDU (William "Chops" Westfield) -
Date: Fri, 10-Jul-87 19:04:43 EDT
Local: Sat, Jul 11 1987 8:04 am
Subject: this is a test
| | | | | | |

-------


 

- - - -
End