Welcome, Guest. Please login or register.


Author Topic: EP-s FDISK fejlesztése (Read 62314 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
EP-s FDISK fejlesztése
« on: 2006.May.16. 00:37:25 »
Code: [Select]

  100 PROGRAM "FDISK.BAS"
  110 REM version 0.0
  120 CLEAR SCREEN
  130 EXT "ideread 41,0000,0,00000000,01"
  140 PRINT "BOOT TYPE","  START   SIZE"
  150 FOR I=1 TO 4
  160   CALL INFO(I)
  170 NEXT
  180 END
  190 DEF INFO(SORSZAM)
  200   LET MUTATO=446+(SORSZAM-1)*16
  210   LET AKTIV=SPEEK(65,MUTATO)
  220   LET TIPUS=SPEEK(65,MUTATO+4)
  230   LET KEZDET=SPEEK(65,MUTATO+8)+SPEEK(65,MUTATO+9)*256+SPEEK(65,MUTATO+10)*256*256+SPEEK(65,MUTATO+11)*256*256*256
  240   LET MERET=SPEEK(65,MUTATO+12)+SPEEK(65,MUTATO+13)*256+SPEEK(65,MUTATO+14)*256*256+SPEEK(65,MUTATO+15)*256*256*256
  250   IF AKTIV=0 THEN
  260     PRINT " NO  ";
  270   ELSE
  280     PRINT " YES ";
  290   END IF
  300   SELECT CASE TIPUS
  310   CASE 0
  320     PRINT "Undefinied",
  330   CASE 1
  340     PRINT "FAT-12",
  350   CASE 4
  360     PRINT "FAT-16",
  370   CASE 5
  380     PRINT "Extended",
  390   CASE 6
  400     PRINT "BigDOS",
  410   CASE ELSE
  420     PRINT "Other",
  430   END SELECT
  440   IF TIPUS<>0 THEN
  450     PRINT USING "#######":KEZDET;
  460     PRINT USING "#######":ROUND(MERET/2,0);
  470     PRINT "Kb"
  480   ELSE
  490     PRINT
  500   END IF
  510 END DEF

:-)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP-s FDISK fejlesztése
« Reply #1 on: 2006.May.16. 13:39:38 »
Quote from: "Povi"
Nagy vagy Zozo! (Ö... mit is csinál ez a program?  :) )

Belolvassa a 41H szegmens 0 címétõl kezdve a 0-ás vinyó 0. szektorát (1 darabot), azaz a particiós táblát.
Ezután sorban kiírja a 4 bejegyzéshez tartozó adatokat.
Egyelõre még csak a friss IDEREAD utasítás tesztelése, de lesz ebbõl még tényleges FDISK is :-) (elõbb kell még egy IDEWRITE is :) )

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP-s FDISK fejlesztése
« Reply #2 on: 2006.May.17. 20:13:23 »
Kicsit tovább fejlesztve :-)
Code: [Select]
 100 PROGRAM "FDISK.BAS"
  110 REM version 0.0
  120 ALLOCATE 9
  130 CODE GETSEGMENT=HEX$("F7,18,67,69,C9")
  140 CODE FREESEGMENT=HEX$("4D,F7,19,C9")
  150 LET WS=USR(GETSEGMENT,0)
  160 CLEAR SCREEN
  170 EXT "IDEINFO "&HEXA$(WS,2)&",3FF0"
  180 LET MAXDRIVE=SPEEK(WS,16374)
  190 IF MAXDRIVE=0 THEN
  200   PRINT "No Harddisk!"
  210   GOTO 340
  220 END IF
  230 PRINT "IDE ROM at "&HEXA$(SPEEK(WS,16369),2)
  240 PRINT "RAM area from "&HEXA$(SPEEK(WS,16370),2)&":"&HEXA$(SPEEK(WS,16372),2)&HEXA$(SPEEK(WS,16371),2)
  250 PRINT "Detected: ";SPEEK(WS,16373);"controllers, ";MAXDRIVE;"disks"
  260 PRINT "BOOT TYPE","  START   SIZE"
  270 FOR I=0 TO MAXDRIVE-1
  280   PRINT "HDD-";I
  290   CALL READS(0,I,0,1)
  300   FOR J=1 TO 4
  310     CALL INFO(J)
  320   NEXT
  330 NEXT
  340 CALL USR(FREESEGMENT,WS)
  350 END
  360 DEF INFO(SORSZAM)
  370   LET MUTATO=446+(SORSZAM-1)*16
  380   LET AKTIV=SPEEK(WS,MUTATO)
  390   LET TIPUS=SPEEK(WS,MUTATO+4)
  400   LET KEZDET=SPEEK32(MUTATO+8)
  410   LET MERET=SPEEK32(MUTATO+12)
  420   IF AKTIV=0 THEN
  430     PRINT " NO  ";
  440   ELSE
  450     PRINT " YES ";
  460   END IF
  470   SELECT CASE TIPUS
  480   CASE 0
  490     PRINT "Undefinied",
  500   CASE 1,11
  510     PRINT "FAT-12",
  520   CASE 4,20
  530     PRINT "FAT-16",
  540   CASE 11,12,27,28
  550     PRINT "FAT-32",
  560   CASE 5,15
  570     PRINT "Extended",
  580   CASE 6,14,22,30
  590     PRINT "BigDOS",
  600   CASE ELSE
  610     PRINT "Other",
  620   END SELECT
  630   IF TIPUS<>0 THEN
  640     PRINT USING "#######":KEZDET;
  650     PRINT USING "#######":ROUND(MERET/2,0);
  660     PRINT "Kb"
  670   ELSE
  680     PRINT
  690   END IF
  700 END DEF
  710 DEF HEXA$(SZAM,HOSSZ)
  720   NUMERIC I,M
  730   STRING H$*8
  740   LET H$=""
  750   FOR I=1 TO HOSSZ
  760     LET M=MOD(SZAM,16)
  770     LET SZAM=(SZAM-M)/16
  780     IF M<10 THEN
  790       LET H$=CHR$(M+48)&H$
  800     ELSE
  810       LET H$=CHR$(M+55)&H$
  820     END IF
  830   NEXT
  840   LET HEXA$=H$
  850 END DEF
  860 DEF READS(C,D,SS,SN)
  870   EXT "IDEREAD "&HEXA$(WS,2)&","&HEXA$(C,4)&","&HEXA$(D,1)&","&HEXA$(SS,8)&","&HEXA$(SN,2)
  880 END DEF
  890 DEF SPEEK32(M)
  900   LET SPEEK32=SPEEK(WS,M)+SPEEK(WS,M+1)*256+SPEEK(WS,M+2)*65536+SPEEK(WS,M+3)*16777216
  910 END DEF

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP-s FDISK fejlesztése
« Reply #3 on: 2006.May.18. 22:09:26 »
Már ilyet is tudunk :-)

(jó sz** a fotó, de tán látszik a lényeg)

Offline MrPrise

  • Administrator
  • EP addict
  • *
  • Posts: 2745
  • Country: hu
    • Enterprise Forever
Re: EP-s FDISK fejlesztése
« Reply #4 on: 2006.May.18. 22:35:05 »
Quote from: "Zozosoft"
Már ilyet is tudunk :-)

Hú, de izgalmasan néz ki! :-) Hajrá!

Offline Ep128

  • EP addict
  • *
  • Posts: 1847
  • Country: hu
    • Honlapom
Re: EP-s FDISK fejlesztése
« Reply #5 on: 2006.May.19. 00:51:30 »
Nagyon klassz!!!! Grat!

Offline geco

  • EP addict
  • *
  • Posts: 7072
  • Country: hu
    • Támogató Támogató
Re: EP-s FDISK fejlesztése
« Reply #6 on: 2006.May.19. 02:24:14 »
szimpatikus, amit a képernyõn látok.:)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP-s FDISK fejlesztése
« Reply #7 on: 2006.May.22. 23:07:52 »
Na már tudunk particiót csinálni, igaz még csak meglehetõsen fapados és ellenõrizetlen módon (INPUT MERET és hasonlók :-) )

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP-s FDISK fejlesztése
« Reply #8 on: 2006.May.24. 22:18:10 »
Lassan kezd valahogy kinézni is :-)

Offline Ep128

  • EP addict
  • *
  • Posts: 1847
  • Country: hu
    • Honlapom
Re: EP-s FDISK fejlesztése
« Reply #9 on: 2006.May.24. 23:51:32 »
Csodálatos! :-)  GRATULA! (Hátha itt reagálsz is...  :-D)
A BigDos -on mit is értünk egyébként...?

Offline MrPrise

  • Administrator
  • EP addict
  • *
  • Posts: 2745
  • Country: hu
    • Enterprise Forever
Re: EP-s FDISK fejlesztése
« Reply #10 on: 2006.May.25. 08:25:08 »
Quote from: "Zozosoft"
Lassan kezd valahogy kinézni is :-)

Szép színes! :-D

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP-s FDISK fejlesztése
« Reply #11 on: 2006.May.25. 10:18:10 »
Quote from: "Ep128"
A BigDos -on mit is értünk egyébként...?

Anno már részletesen kifejtettem az Indexen :-)
Bigdos a 32 bites logikai szektorcímzést  használó FAT16 partició, azaz 32 megánál nagyobb. Hivatalosan 1988-ban az MSDOS 4.0-val lett bevezetve.
Na ilyet nem fogunk EP-n használni, még egy jó darabig...

Offline gafz

  • EP lover
  • *
  • Posts: 700
  • Country: hu
    • http://gafz.atw.hu
Re: EP-s FDISK fejlesztése
« Reply #12 on: 2006.May.25. 11:55:31 »
És 16 bites logikai szektorcímzésû FAT16 partitiot mikor fogunk használni? :)
Enterprise Forever

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP-s FDISK fejlesztése
« Reply #13 on: 2006.May.25. 12:30:22 »
Quote from: "gafz"
És 16 bites logikai szektorcímzésû FAT16 partitiot mikor fogunk használni? :)

Valamivel elöbb :-) ahhoz csak kicsit kell majd árirni az EXDOS-t...
De elöbb mindenképpen teljesen, újrafordíthatóra vissza kell fejteni.

Offline gafz

  • EP lover
  • *
  • Posts: 700
  • Country: hu
    • http://gafz.atw.hu
Re: EP-s FDISK fejlesztése
« Reply #14 on: 2006.May.25. 13:01:30 »
Kézzelfogható hardware mikor lehet belõle?
Enterprise Forever