Tokugawa Corporate Forums

Retro Japanese Computing
It is currently March 28th, 2024, 9:03 pm

All times are UTC




Post new topic Reply to topic  [ 37 posts ]  Go to page Previous  1, 2, 3
Author Message
 Post subject:
PostPosted: April 18th, 2011, 11:25 am 
Offline
User avatar

Joined: April 27th, 2009, 11:42 am
Posts: 725
Location: Twilight of Neo Kobe City
I'll do some more tests with the Zork disks. I think that if a disk is a "regular" basic one it can list it's contents.

However, i've uploaded the docs here: http://www.megaupload.com/?d=LS7MODT0

Enjoy ;)

_________________
Call me Snake...


Top
 Profile  
 
 Post subject: Re: D88 Format Question
PostPosted: April 24th, 2012, 11:52 pm 
Offline
User avatar

Joined: May 16th, 2007, 7:08 pm
Posts: 861
Uh, can I ask for a re-upload of the docs and the EsperKnight's utility? Please?


Top
 Profile  
 
 Post subject: Re: D88 Format Question
PostPosted: April 25th, 2012, 9:17 pm 
Offline
User avatar

Joined: May 16th, 2007, 7:08 pm
Posts: 861
I don't seem to understand how the 2-byte pointer at the end of the file name (in a standard PC88 BASIC file allocation table) works. Can anyone please explain this procedure?

EDIT: I figured it out, it took a bit of time since I didn't knew a lot of things.

Code:
NOTE: This is made up of my own notes, so something could be innacurate. In that case please correct me. Thanks.


Standard N-88 BASIC FAT (File Allocation Table) Structure
------------------------------------------------------------------------------

A standard N-88 BASIC disk's FAT (located at CHRN 12 01 01 01) is composed of 12 sectors, each sector holding 16 entries, reaching a maximum of 192 possible files and a size of 3072 bytes.
If the entry is unused, it's padded with FFh.
Each entry (16 bytes) is composed as follows:

-6 bytes to store the Filename
-3 bytes to store the Filename Extension
-1 byte for the separation mark (80h for a dot, 01h for an asterisk. Dunno what this indicates.)
-1 byte for the Cluster number to read
-5 bytes full of FFh

 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|   Name   | Ext |S|C|    FF   |


Each Cluster is 2048 bytes long, or 8 sectors of 256 bytes. A quick search method would be to do (Cluster number)/2 = Track number. If there's no rest, it starts on Sector 1. If the rest is 5, it starts on Sector 9.

Example:
-If the Cluster number is 48h (72 decimal), it starts on Track 36 Sector 1 and ends in Track 36 Sector 8
-If the Cluster number is 49h (73 decimal), it starts on Track 36 Sector 9 and ends in Track 36 Sector 16


Top
 Profile  
 
 Post subject: Re: D88 Format Question
PostPosted: April 28th, 2012, 4:07 am 
Offline

Joined: August 17th, 2009, 10:22 pm
Posts: 46
Apologies for taking so long as I saw this a bit ago but here's my utility and code packaged with it. My utility will only work with the first disk of a multi disk image cause I'm lazy so make sure to split them :) Also, it spits out two different types of tracks. What I noticed was that some times they would have the sectors numbered out of order on the disk so I would output both the ordered and unordered versions with _orig.bin being the unordered one. May not be useful but hey :) The code prob could be cleaned up and such but ah well. Later on when I track it down I'll post up my sector insertion utility too allowing you to reinsert sectors into a disk. The original goal was to expand the D88 image but I found out that for the PC88 at least the image is fixed at... 341k or so... but at least it makes it easier to reinsert sectors :) So anyways here's the http://dl.dropbox.com/u/7947739/D88_Extract.rar This should be good for as long as my Dropbox account is good :) I'll see about posting those docs too unless Snake beats me although I can't remember what the file name is named so may be a bit.

Edit:

Forgot to mention, don't rely on the file names as those can be false sadly :( An example is The Death Trap. It has a list of files but some are bogus if I recall right plus they didn't extract any of the scripts or anything in those. What they'll do instead a lot of times they have there own code to load in the appropriate tracks as needed. Forget what ports they use... have to find that in my notes but I think I may have mentioned it in one of these posts too... but feel free to post here or on the board and I can help out as needed as I'm quite familiar now with how it does it's stuff. Really I need to make a post about this stuff but I get lazy and forgetful ;D


Top
 Profile  
 
 Post subject: Re: D88 Format Question
PostPosted: April 28th, 2012, 4:03 pm 
Offline
User avatar

Joined: May 16th, 2007, 7:08 pm
Posts: 861
Many thanks! Nice looking code you have there, I will check it as soon as i have some time.
Out of curiosity, what compiler did you use?


Top
 Profile  
 
 Post subject: Re: D88 Format Question
PostPosted: April 28th, 2012, 4:24 pm 
Offline

Joined: August 17th, 2009, 10:22 pm
Posts: 46
Thanks :D I'm hoping that means it's readable then ;D

For the compiler I use Visual Studios. Should work with GCC as well or any other as there's nothing windows specific that I can remember.

For the docs, still looking so at this time I'm not sure if I have them... I recall downloading them but heck if I remember where I put them :D


Top
 Profile  
 
 Post subject: Re: D88 Format Question
PostPosted: October 18th, 2018, 2:17 pm 
Offline
User avatar

Joined: March 13th, 2018, 2:43 am
Posts: 3
Location: Western Canadia
Apologies in advance for bringing this thread back from the dead, but the N88-BASIC manual (at least for the MR) makes reference to a DSKF function in BASIC that can point out the FATs on a disk.

I'm not sure which BIOS command this actually calls, but here's the command and the parameters:

Quote:
Usage: DSKF([drive number]<, parameter>) Get information on a floppy disk inserted into drive drive number. Note that drive numbers are 1-indexed.

Parameters you can extract are:

0 - Maximum track number
1 - Number of sectors per track
2 - Single sided (0) or double-sided (1) floppy disk
3 - Number of clusters per track
4 - Number of clusters per floppy disk
5 - Track index containing the directory info
6 - Number of sectors per cluster
7 - Start sector of FAT
8 - Last sector of FAT
9 - Number of FATs
10 - Sector index containing ID


N88-BASIC manual is here: https://archive.org/details/NECPC8801mk ... ANUAL1986L

The DSKF stuff is on page 2-61 (pg. 143 in the PDF).


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 37 posts ]  Go to page Previous  1, 2, 3

All times are UTC


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group