Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #2803 > unrolled thread

Re: prodos 2.0.3?

Started byJohn Brooks <jbrooks@blueshiftinc.com>
First post2016-06-30 13:27 -0700
Last post2016-06-30 17:29 -0700
Articles 4 — 3 participants

Back to article view | Back to comp.sys.apple2.programmer

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: prodos 2.0.3? John Brooks <jbrooks@blueshiftinc.com> - 2016-06-30 13:27 -0700
    Re: prodos 2.0.3? Antoine Vignau <antoine.vignau@laposte.net> - 2016-06-30 14:32 -0700
    Re: prodos 2.0.3? Michael Pohoreski <michael.pohoreski@gmail.com> - 2016-06-30 15:27 -0700
      Re: prodos 2.0.3? John Brooks <jbrooks@blueshiftinc.com> - 2016-06-30 17:29 -0700

#2803 — Re: prodos 2.0.3?

FromJohn Brooks <jbrooks@blueshiftinc.com>
Date2016-06-30 13:27 -0700
SubjectRe: prodos 2.0.3?
Message-ID<71f12aa5-c86c-4485-a6f8-4549ef28fadd@googlegroups.com>
On Wednesday, March 24, 2010 at 8:51:41 PM UTC-7, Antoine Vignau wrote:
> On 24 mar, 23:21, rich12345 <aiiad...@gmail.com> wrote:
> > On Mar 24, 1:55 pm, Toinet <antoine.vig...@laposte.net> wrote:
> >
> > > sorry, a typo, read "for ProDOS 2.0.3 only."
> > > av
> >
> > Thanks for the reply.  Exactly what I was looking for except:
> >
> > I didn't even know there was a 2.0.3.  are there disadvantages
> > of running 2.0.3 instead of 2.0.2?
> >
> > I can't find anywhere to download it either.
> >
> > do you know where I can find the same information about 2.0.2 ?
> >
> > RIch
> 
> Version 2.0 is a great update compared to the others then...
> 
> Version 2.0.1 for 8-bit system 4.0??, GS 6.0
> *       Fixed bug in remap_sp.  Status call was returning error $40
> whenever
> *         it tried to return no error.  Changed CMP # to EOR # (no
> bytes moved).
> *       Changed splash screen to 2.0.1, KVersion to $21.
> 
> ************************************************************************
> 
> Version 2.0.2 for 8-bit System 4.0.1
> *	Changed version number to 2.0.2.
> *	Conditionally removed the d4 optimization, since we don't need the
> *	  bytes right now (lower risk to not change it!).
> *
> *	KVersion to $22.
> *	Removed slot 3 drive 2 from the MountDirection table.
> *
> *	Made RELOCATION/CONFIGURATION ERROR uppercase again (like 1.9)
> *	so it will be legible on a II+.  After displaying the message,
> *	hang with BMI instead of BRA, for pre-65C02.
> *
> *	Change the "(C)APPLE'83" message at $BF40 to start with a $00,
> *	in hopes of preventing crashes when applications use the code
> *	in the ProDOS 8 Technical Reference to remove /RAM.
> *
> *	Changed page-3-init table to initialize NMI jump to $00 $40 $00
> *	instead of JMP $FF59.
> *
> *	Added and then removed the following change:
> *	 ;Just before jumping to the SYS program, if UNIT ($43) is still
> *	 ;zero, make it something else, because zero is dangerous (if fed to
> *	 ;ON_LINE, for example, it will return much more data than
> expected).
> *	 ;This should only be zero in the somewhat strange case that you
> *	 ;network-booted into GS/OS, and then switched to P8 but have so
> many
> *	 ;devices online that your boot volume isn't in DEVLST.
> *	Optimized some stuff in the loader to make room.
> *
> 
> ************************************************************************
> 
> Version 2.0.3 for GS System 6.0.1
> *	Changed version on splash screen to 2.0.3.
> *	KVersion is $23.
> *	Updated the Thunderclock year table for 1993-1998.
> *	When we don't have a 65C02, instead of saying "relocation/
> *	configuration error" we put a message below the P8 version
> *	line so it looks like this:
> *
> *                            Apple II
> *                 ProDOS 8 V2.0.3    16-Dec-92
> *            REQUIRES EHHANCED APPLE IIE OR LATER
> *
> *	Apple II+ users will not be able to read the lowercase, but
> *	they can read the REQUIRES part.
> *
> *	Removed the message "**  Unable to find a ".System" file  **".
> *	We always use the Quit code if there is no .System file.  The
> *	old check was flawed anyway--it was invalid after running the
> *	ATINIT file.
> *
> 
> av

I never paid attention to the Prodos numbering scheme. How is a three-digit version number encoded into 2 nibbles?

If P8 2.0.1 is KVersion=$21, what would KVersion be for P8 2.1?

Similarly, I wonder what the KVersion was for Prodos 1.1 and 1.1.1.

Prodos Tech Note #21 contains this example code:

            LDA    #$04        ;require at least ProDOS 8 1.4
            CMP    $BFFF       ;KVERSION (ProDOS 8 version)
            BEQ    MoreNetwork ;have to check further

http://www.1000bit.it/support/manuali/apple/technotes/pdos/tn.pdos.21.html

-JB

[toc] | [next] | [standalone]


#2804

FromAntoine Vignau <antoine.vignau@laposte.net>
Date2016-06-30 14:32 -0700
Message-ID<12a703ab-023e-44fa-8669-7ada2b5b6dba@googlegroups.com>
In reply to#2803
I will send a mail to you soon, John...
av

[toc] | [prev] | [next] | [standalone]


#2805

FromMichael Pohoreski <michael.pohoreski@gmail.com>
Date2016-06-30 15:27 -0700
Message-ID<b97dcd5b-5410-4622-a0f6-e147366d154d@googlegroups.com>
In reply to#2803
On Thursday, June 30, 2016 at 1:27:19 PM UTC-7, John Brooks wrote:
> Prodos Tech Note #21 contains this example code:
> 
>             LDA    #$04        ;require at least ProDOS 8 1.4
>             CMP    $BFFF       ;KVERSION (ProDOS 8 version)
>             BEQ    MoreNetwork ;have to check further
> 
> http://www.1000bit.it/support/manuali/apple/technotes/pdos/tn.pdos.21.html


OT: Ah, that's the TN that mentions the device id's!

- - - 8< - - -

What to Do With the Slot Number

Once you have the slot number, you can look at the slot I/O ROM space to determine the kind of device it is. As described in the ProDOS 8 Technical Reference Manual, ProDOS looks for the following ID bytes in ROM to determine if a ProDOS device is in a slot:


    $Cn01 = $20
    $Cn03 = $00
    $Cn05 = $03

- - - 8< - - -

I see Disk Drive Interface Firmware has these prefix bytes:

Apple //c

C600:A2 20    LDX #$20 ; diskid[0] = $20
C602:A0 00    LDY #$00 ; diskid[1] = $00
C604:64 03    STZ $03  ; diskid[2] = $03

Apple //e

C600:A2 20    LDX #$20 ; diskid[0] = $20
C602:A0 00    LDY #$00 ; diskid[1] = $00
C604:A2 03    LDX #$03 ; diskid[2] = $03

[toc] | [prev] | [next] | [standalone]


#2806

FromJohn Brooks <jbrooks@blueshiftinc.com>
Date2016-06-30 17:29 -0700
Message-ID<3d32c622-eac7-46c8-86c8-f3cf7bd5bf21@googlegroups.com>
In reply to#2805
On Thursday, June 30, 2016 at 3:27:27 PM UTC-7, Michael Pohoreski wrote:
> On Thursday, June 30, 2016 at 1:27:19 PM UTC-7, John Brooks wrote:
> > Prodos Tech Note #21 contains this example code:
> > 
> >             LDA    #$04        ;require at least ProDOS 8 1.4
> >             CMP    $BFFF       ;KVERSION (ProDOS 8 version)
> >             BEQ    MoreNetwork ;have to check further
> > 
> > http://www.1000bit.it/support/manuali/apple/technotes/pdos/tn.pdos.21.html
> 
> 
> OT: Ah, that's the TN that mentions the device id's!
> 
> - - - 8< - - -
> 
> What to Do With the Slot Number
> 
> Once you have the slot number, you can look at the slot I/O ROM space to determine the kind of device it is. As described in the ProDOS 8 Technical Reference Manual, ProDOS looks for the following ID bytes in ROM to determine if a ProDOS device is in a slot:
> 
> 
>     $Cn01 = $20
>     $Cn03 = $00
>     $Cn05 = $03
> 
> - - - 8< - - -
> 
> I see Disk Drive Interface Firmware has these prefix bytes:
> 
> Apple //c
> 
> C600:A2 20    LDX #$20 ; diskid[0] = $20
> C602:A0 00    LDY #$00 ; diskid[1] = $00
> C604:64 03    STZ $03  ; diskid[2] = $03
> 
> Apple //e
> 
> C600:A2 20    LDX #$20 ; diskid[0] = $20
> C602:A0 00    LDY #$00 ; diskid[1] = $00
> C604:A2 03    LDX #$03 ; diskid[2] = $03


> Once you have the slot number, you can look at the slot I/O ROM space to determine the kind of device it is.

Unfortunately using the slot number to inspect the I/O ROM will be incorrect for smartport drives since there can be more than 2 drives per slot with the extra drives being mapped into slots which are empty or contain non-storage cards (serial port, mouse, etc).

The safe way to directly access a storage I/O driver in Prodos is to use the P8 Unit number (X=%000DSSS0) to call the P8 device driver handler located at $BF10,X. 

http://www.1000bit.it/support/manuali/apple/technotes/pdos/tn.pdos.20.html

Driver/Smartport calls can return the number of devices attached to the card/smartport and the type/subtype for device identification. See the Smartport docs, p122-123:

http://www.applelogic.org/files/GSFIRMWAREREF1.pdf

-JB

[toc] | [prev] | [standalone]


Back to top | Article view | comp.sys.apple2.programmer


csiph-web