Newsgroup: it.comp.os.win.win9x
Titolo: WIN98 on ram partendo da CD-ROM livecd

sto' cercando di fare un livecd di win98, tipo i vari linux che da un po' di
tempo si trovano in giro.
per ora sono riuscito a caricare e far avviare win98 da discoram,
utilizzando come punto sorgente un HDD, e tutto fila liscio come l'olio, ma
quando tento di mettere il tutto su cd-rom il pc si pianta all'avvio,
sicuramnete perche' cerca di scrivere qualcosa sul disco di avvio, che
essendo un cd-rom non puo' essere scritto.
----------------------------------------------------------------------------
----------
La procedura che ho adottato con l'HDD e' la seguente, su scheda madre EPIA
M10000 con 512MB di ram:
1) ho fatto 2 partizioni sul disco rigido, una da circa 300 MB e l'altra a
piacere (e' indifferente)
2) ho effettuato l'installazione minima di win98 usando come path d:\win98 -
cosi' facendo mi sono ritrovato i file di avvio su C:\ e le dir win98,
programmi e documenti su D:\
3) ho aggiornato, sistemato, e ridotto win98 all'osso: 208 MB con
ie6-oe6-zoomplayer-diretx9-acrobat5.0- tutti i codec video e audio per le
varie codifiche - ed altre piccole cosette.
4) ho recuperato i file del disco A virtuale che viene creato con il disco
di booting di win98
5) ho messo i seguenti file in C:\
aspi2dos.sys   |
aspi4dos.sys   |
aspi8dos.sys   |    provenienti del "disco A" del booting d'installazione di
win98
aspi8u2.sys     |
aspicd.sys       |
autoexec.bat - scrivero' poi come l'ho sistemato
btcdrom.sys   | anche questi provengono dal "discoA" di win98
btdosm.sys    |
command.com
config.sys - scrivero' poi come l'ho sistemato
country.sys
dblbuff.sys
display.sys
edit.com
ega.cpi
emm386.exe
flashpt.sys
himem.sys
ifshlp.sys
io.sys
keyb.com
keyboard.sys
Lcopy.exe - file che fa' parte dei set LFN (longfliename) scaricabile dalla
rete
mode.com
mscdex.exe
msdos.sys - scrivero' poi come l'ho cambiato
oakcdrom.sys | discoA di win98
smartdrv.exe
videorom.bin - questo file e' dovuto al fatto che c'e' una scheda video on
board
Xmsdisk.exe - vers. 1.9 programma per disco ram fino a 2GB
----------------------------------------------------------------------------
----
6) ho poi scritto in questo modo il config.sys:
-------------------------------------------
device=himem.sys /testmem:off
device=emm386.exe noems
device=dblbuff.sys
devicehigh=ifshlp.sys
device=oakcdrom.sys /D:WINonCD
device=btdosm.sys
device=flashpt.sys
device=btcdrom.sys /D:WINonCD
device=aspi2dos.sys
device=aspi8dos.sys
device=aspi4dos.sys
device=aspi8u2.sys
device=aspicd.sys /D:WINonCD
country=039,850,country.sys
devicehigh=display.sys con=(ega,,1)
dos=high,umb
files=80
buffers=40
stacks=0,0
break=on
switches /f
shell=
command.com
 c:\ /p /e:768
----------------------------------------------
in questo modo viene cercato il driver adatto per il cd-rom, atapi o scsi, e
viene salvato il risultato come variabile WINonCD
7) ho compilato autoexec.bat in questo modo:
-------------------------------------------
xmsdsk 256000 D: /t /y
mode con codepage prepare=((850) ega.cpi)
mode con codepage select=850
keyb it,,keyboard.sys
rem - tolta perche' dava errore scrivendo sul cd-rom un file temp -
smartdrv.exe
LH MSCDEX.EXE /D:WINonCD /L:C
lcopy C:\WINDOWS\*.* D:\ /a /s
-----------------------------------------
la prima riga crea un discoram da 256000 KB, ossia 250MB, chiamandolo D: ed
avendo le opzioni del caso ( se a xmsdisk non viene data la lettera del
drive la configura in automatico come la prima disponibile dopo gli HDD
reali)
la 5° riga avvia smartdrv, un programma che abilita una caches di scrittura
per aumentare la velocita' del drive; e' stata tolta perche' cercava di
creare un file sul cd-rom, dando errore in scrittura.. logicamente!
la 6° riga carica il drive del cd dalla variabile WINonCD e gli imposta come
lettere C:
la 7° riga esegue il comando di copiatura delle dir dalla path di stoccaggio
al disco virtuale D: (le opzioni sono per la sovrascrittura automatica e per
la creazione delle sotto cartelle).
------------------------------------------------------------------------
8) ho compilato msdos.sys in questo modo:
-------------------------------------------
[Paths]
WinDir=D:\WIN98
WinBootDir=D:\WIN98
HostWinBootDrv=D
[Options]
DisableLog=1
BootMulti=0
Logo=0
BootGUI=0
DoubleBuffer=0
AutoScan=0
WinVer=4.10.1998
;
;The following lines are required for compatibility with other programs.
;Do not remove them (MSDOS.SYS needs to be >1024 bytes).
-------e i 1024 rimanenti------
ho disabilitato la scrittura dei log (bootlog.tex), perche' si sarebbe avuto
un errore cercando di scrivere sul cd-rom
ho tolto il logo d'avvio
ho tolto l'avvio dell'interfaccia grafica, in questo modo posso dare io il
comando win dalla shell dos ed entrare in windows
anche l'autoscan e' stato disabilitato
----------------------------------------------------------------------------
--
9) a questo punto ho usato il programma in dos Partition Manager della
ranish per nascondere la partizione D:\ (quella d'installazione di win98)
del disco rigido; la modifica dell'MBR ha effetto solo dopo il riavvio
totale del PC
----------------------------------------------------------------------------
---
10) ho chiuso win98 andando in dos ( non un ravvio totale, ma solo il
riavvio in dos)
11) ho creato in C:\ del disco rigido la dir windows
12) ho copiato il contenuto di D:\ nella dir C:\window con il comando
(eseguito in c:) :
Lcopy D:\*.* C:\windows\ /a /s
13) ho spento il pc ed ho riavviato.
----------------------------------------------------------------------------
---
ora cominciano i problemi:
(ricordo che il sistema ha ancora il disco rigido e il cd-drive)
riavvio
il config.sys riconosce il cd-rom
scrive la variabile sul disco rigido in C: (giustamente da qualche parte la
dovra' scrivere, ma su cd-rom non la potra' scrivere!)
esegue la configurazione
autoexec.bat viene eseguito:
crea il disco virtuale da 250MB
esegue smartdrv.exe (smartdrv e' un accelleratore dei drive, ma con il
cd-rom tentera' di scrivere un file su questo dando errore in scrittura)
esegue mscdex
esegue il comando Lcopy.
avviene la copiatura del contenuto di C:\WINDOWS in D:\ (crica 2280 file in
1 munuto, il disco rigido e' un quantum da 3GB con transferrate sequenziale
di circa 10MB/s, ma in queste condizioni non va' a piu' di 3.5MB/s)
arriva al promp C:>
a questo punto do' il comando win ed entro nel'interfacia grafica di windows
msdos.sys impedisce un eventuale autoscan (con cdrom non ci dovrebbero
essere problemi) e la scrittura del BOOTLOG.TXT ( che non potrebbe scrivere
sul cd-rom in C:\)
e mi ritrovo con windows operante dal disco ram, con il disco rigido come
C:\ e i file di avvio e di storage, il cd-rom viene messo come unita' E:,
perche' windows capisce che gia' c'e' una unita' che si chiama C:\
faccio qualche operazione, navigo un po'
installo un programma.. tanto il disco D: verra' cancellato appena spengo e
windows rimarra sempre al "punto 0"..
Se richiede il riavvio lo do' manualmente da stat/chiudi sessione/riavvio
tenendo premuto il tasto SHIFT, cosi' non avro' un reset della memoria e non
si cancellera' il disco ram, ma avro' solo una rilettura del reg di
configurazione.
---------------------------------------------------------------------
a questo punto faccio cerco di fare la ISO di booting
correggo l'autoexec alla voce
LH MSCDEX.EXE /D:WINonCD /L:C
che windows ha cambiato in
rem - da Windows Setup - LH MSCDEX.EXE /D:WINonCD /L:C
cercando di autocorreggere quest'errore trovato quando c'e' l'hard disk
installo nero5.5
vado alla sezione cd-booting
riconosce automaticamente la partizione C: come immagine da scrivere (e'
stato fatto apposta da 300 MB, in quanto solo con partizioni inferiori a 650
o 700 MB si puo' fare delle iso bootabili, senno bisogna dare il percorso di
un'immagine gia' fatta)
tolgo le spunte su tutto quello che renderebbe non leggibile il disco in dos
e masterizzo la partizione C:\
-------------------------------------------------------
alla fine della masterizzazione spengo
stacco l'HDD dalla scheda madre (per esere sicuro)
avvio e faccio il booting da cd-rom
il cd-rom viene riconosciuto
all'inizio mi dava errore di scrittura con lo smartdrv.exe
poi crea il disco ram
copia i file in circa 4 minuti (tanti, anche con un cd 52X, ma credo che con
lo smartdrv andrebbe megli, a farlo funzionare)
arriva al promp C:>
do' il comando win
IL PC S'INCHIODA!!!
windows cerca di scrivere qualcosa su C:\
probabilmente il riaggiornamento del videorom.bin (se cancellato da hdd
ricompariva al riavvio successivo)
o ha qualche altra cosa che non so'??
nei ripetuto avvii con HDD ho trovato modificato solo autoexec.bat, e veniva
rifatto videorom.bin se cancellato, pero' non veniva toccato nessun altro
file.
vorrei consigli su:
se settare una dir temp
come posso dire dove mettere la variabile WINonCD?
come posso dire dove mettere il file temporaneo di smartdrv?
se posso cambiare la posizione logica dei file di avvio da C: (cd-rom) a D:
(discoram), o devo rifare l'installazione partendo da C: (cosi' avvio da
cd-rom in D: e dico che il driver di avvio e' C: discoram)
windows scrive altre cose all'avvio?
il problema e' dato da videorom.bin?
se mi riesce, sui 400Mb restanti del cd-rom mettero' driver e programmi vari
affinche' possa essere facilmente installato su tutte le macchine, anche se
a quel punto bisognera' vedere da che partizione farlo partire, in quanto se
ci sono dischi cerca di usarli comunque.
accetto consigli su tutto..
PS
in questo periodo la mia ragazza e' lontana, e qualcosa mi devo inventare
per passare il tempo!

 inventare per passare il tempo!
Dormire no ;) ?!? -> OK, lo so = da che pulpito...
-- 
|Ż \/Ż | /Ż\ /Ż__/Ż__|-<|> 
http://planynet.hypermart.net/fastweb
 <|
|Ż|\/|Ż|/Ż_Ż\|(__\__ \-<|> * FAQ 1.5 ITGF it.tlc.gestori.fastweb <|
|_|  |_/_/ \_\___|___/-<|> * SITO: 
http://planynet.hypermart.net
 <|
|>Togli/Remove .INVALID<|> * SITO: 
http://plany.fasthosting.it
 __<|

 basati su OS Win32.
ottimo link.. gia' mi avevano accennato a winXPpe..
comunque il problema e' solo sulla scheda epia:
il file videorom.bin viene riaggiornato ad ogni riavvio, percio' da' errore
in scrittura.
ho provato con un pc senza scheda video on board ( non c'e' possibilita' di
togliere la scheda video da bios sulla epia), ed arriva quasi al desktop.
il problema e' che vengono chiesti i file dei driver per l'installazione di
nuovi hardware (praticamente viene richiesto tutto), e finche glie ne dai
va' tutto bene, appena non ne dai uno (ignora file/annulla) viene tentato di
scrivere system.dat  su C:\ e va' in errore..
posso fargli evitare di scrivere questo file?

 tentato di scrivere system.dat  su C:\ e va' in errore..
Hai provato a disabilitare il PNP sia dal Bios che rinominando il file
bios.vxd (root\windows\system) in bios.old ? -> qualora non funzionasse
un'altra soluzione sarebbe la reinstallazione di Windows98, usando lo
switch /p :
==
setup /p i
==
per cui non verrebbe attivato il supporto PNP.


 per cui non verrebbe attivato il supporto PNP.
in questo modo pero' perderei parecchi vantaggi offerti del PnP..
ora  l'ho montato su un'altra macchina, e sembra che il problema del
videorom.bin sia sparito..
ho installato tutte le periferiche sul nuovo sistema, e mi accingo a fare la
iso, e vediamo se con tutto l'HW installato aggiro il problema del
system.dat, o meglio del file SETUPXLG.TXT generato su C:\ se non trova i
driver dell'HW appena riconosciuto.
----------------------------------------------------------------------------
---------
Time Stamp: Wed Jan 14 15:43:44 2004
cbDiskPrompt : File copy canceled on:
Time Stamp: Wed Jan 14 15:43:44 2004
cbDiskPrompt : 
machine.cat
;CATALOG3.CAB
Time Stamp: Wed Jan 14 15:43:44 2004
cbDiskPrompt : D:\WIN98\catroot
ecc
questo e' uno stralcio..
conosci il modo di evitare l'editazione di questo file da comando in
MSDOS.SYS?

 MSDOS.SYS?
Non vedo niente di utile nelle opzioni per MSDOS.SYS :
==
- 
http://support.microsoft.com/default.aspx?scid=kb;en-us;118579
- 
http://www.computerhope.com/msdossys.htm
Non credo peraltro che cambi qualcosa impostando anche SET TEMP=D:\ in
AUTOEXEC.BAT, dato che il file viene scritto nella root della partizione
d'avvio.


 d'avvio.
appunto..
ora sto' cambiando prospettiva:
A:\ iso di avvio tipo disco installazione win98
C:\ ramdrive
D:\ cd drive con rom sorgente
ho gia' cambiato unita' logica alla partizione da D a C, e ora smanettero'
un po' con i dischetti d'avvio, anche se sono ormai anni che non uso piu' un
9x.
PS
giuro, mai visto windows cosi' dinamico (anche se liscio e leggero).. con
queste macchine sul 2D sembra di stare su un PC di ultima generazione!

 generazione!
Per quel che vale, stai facendo un buon lavoro -> sta a te poi vedere se
rilasciare eventualmente un tutorial online per chi volesse studiare 
cio' che hai realizzato.
Nota a margine :
----------------
Qualora non l'avessi gia' fatto, finito questo progetto (e prima che
torni la tua ragazza), potresti "divertirti" anche con il confronto tra
WinXPE e la trial 120 giorni dell'embedded kit MS per XP :
http://www.microsoft.com/windows/embedded/trial/evalkit.asp
http://www.microsoft.com/windows/Embedded/xp/techinfo/howto/stepguide/


 queste macchine sul 2D sembra di stare su un PC di ultima generazione!
che hardware monti?
Ancora bravo!
Cià, Lep.

essendo un cd-rom non puo' essere scritto.
Affermazione piu' che vera.
Ho letto tempo fa un messaggio su come fare per superare l'ostacolo in
pratica l'autore creava un ramdisk sul quale andava a scrivere, mi
ricordo che c'era una disquisizione sul programma da usare per creare
il ramdisk ma la mia memoria si ferma qui.
--
Ciao
Andrea Malfatti

 
http://www.microsoft.com/windows/Embedded/xp/techinfo/howto/stepguide/
ho gia' chiesto ad un amico di procurarmi la WinXP-PE.. appena me la porta
incomincio a vedere cosa si puo' tirare fuori..
della trial non sapevo nemmeno l'esistenza.. l'embadded e' solo in inglese,
da quello che ricordo.
sarebbe carino anche adattare winCE o pocketPC, e visto che la stessa Via
sta' facendo un progetto per consolle basato su EPIA e CE, si potrebbe
tentare.
Per ora non ho adsl (fritto l'ennesimo modem di alice!), e non posso
procurarmela da solo.
ho trovato anche un tool per fare la winxpPE sul dischetto di una rivista;
mancano solo un paio di file da aggiungere e si ottiene la winxpPE dal disco
di'installazione di winxp.. ora mi accingo a trovare questi due famigerati
file.

 potrebbe tentare.
In tal caso puoi provare con Windows CE .NET 4.2 Trial 120gg che trovi
seguendo il primo link che ti ho indicato -> altrimenti puoi sempre
ordinare il CD oppure il DVD (CD 2.95 dollari / DVD 3.95 dollari + spese
di consegna) 
https://www.interactservices.com/WinEmbedded/Products.asp
 .


 di consegna) 
https://www.interactservices.com/WinEmbedded/Products.asp
 .
grazie per le preziose fonti ;)

 Sto cominciando a studiarci.
con win98 non e' affatto difficile (anche se ancora non ho provato).
ti serve per prima cosa una macchina server, e poi un client con scheda di
rete con rombios.
sul server deve essere installato un server bootcp e tftp, ed eventualmente
un dhcp.
per linux sono gratis e facili da trovare, per win.. si pagano (almeno
quelli che ho trovato io), o si trovano sulle relese server del 2000 o 2003.
in pratica, il processo di avvio e' il seguente:
avvi da scheda di rete,
il server bootcp sente la chiamata (ci sono server che possono vedere il mac
della scheda e dare l'autorizzazione, o, se non usi un server con nat,
sentire da che IP arriva la chiamata e pilotarla alla cartella giusta)
rimanda sulla cartella dove verra' prelevato il config.sys e autoexec.bat
verra' dato il trasferimento tramite protocollo tftp (un protocollo simile
all'ftp ma molto piu' scarno),
il client esegue config.sys e autoexec.bat
a questo punto dovrai esere tu a decidere:
se la cartella del server e' aperta in scrittura e lettura, puoi avviare
anche secondo il percorso da rete (logicamente con la giusta configurazione
del sistema operativo),
se e' solo lettura, dovrai procedere come sulla livecd che ho fatto, ossia
creare un discoram e scaricare i file dell'so.
puoi fare una cosa ibrida:
crei il discoram (da server\dir solo in lettura), e configuri un altra
cartella del server in condivisione lettura\scrittura, che configurerai e
userai come disco di rete, dove metterai le path per i programmi o i
documenti..
non e' difficile farlo..
per il lato server ho dato uno sguardo a win2003server, ma appesantisce
molto le macchine, e ho tentato con winxp e un programma dimostrativo per il
server:
DHCP/BOOTP server 
http://home.t-online.de/home/hanewin/dhcp-e.htm
c'e' anche un server free, ma non ho capito ancora bene come funziona..
http://www.enterasys.com/support/techtips/tk0020-9.html
 ed altri qui:
http://www.weird-solutions.com/download/demo.html
.
a me servirebbe una immagine di winXP per far girare dei semplici client
diskless, e sto' cercando di capire come fare.. sto' leggendo
http://www.nu2.nu/pebuilder/
e credo che ci siano parecchi spunti per farlo.

 per linux sono gratis e facili da trovare, per win.. si pagano
Eheh ;) -> ci sono anche freeware, anche se sono limitati esclusivamente
all'uso non commerciale. Oltre a quelli da te citati, va aggiunto il
TFTP Server Multithread+Security di Solarwinds. Ricapitolando quindi :
==
- 
http://www.solarwinds.net/Tools/Free_tools/TFTP_Server/
 TFTP       
- 
http://www.weird-solutions.com/download/index.html
 DHCP/TFTP/BOOTP [1]
- 
http://www.enterasys.com/support/techtips/tk0020-9.html
 TFTP/BOOTP [2]
- 
http://home.t-online.de/home/hanewin/dhcp-e.htm
         DHCP/BOOTP [3]
[1] OS WindowsNT/2000/XP -> presenti limitazioni sul numero dei client.
[2] OS Windows9x/NT (non garantito su 2000/XP) + guida. 
[3] Utilizzabile liberamente per scopi non commerciali.


 - 
http://home.t-online.de/home/hanewin/dhcp-e.htm
         DHCP/BOOTP [3]
ottimo Macs!