Ver la versión completa : GPFS: Sistema de archivos virtual sobre PC-Link
Wenas!
Acabo de terminar de implementar un sistema de archivos para Linux que te permite acceder a la SMC de la GP32 como una unidad extraible más usando el protocolo PC-Link, dado que tanto el gpDrive como el phoDrive no funcionan correctamente con Linux.
Esta basado en el proyecto "gplink" (http://dexy.mine.nu/gp32/gplink/), por lo que tiene sus mismas limitaciones mas las ke he añadido yo en la conversion (el PC-Link funciona a nivel de fichero y un FS a nivel de bloque).
Queria preguntar si a alguien mas le interesa este proyecto o lo encuentra usable xa plantearme si lo saco a la luz o si es una rayada mia que solo voy a usar yo. Realmente le falta mucha optmizacion pero tiene funcionalidad completa.
Salu2
Topochan
08/12/2004, 22:38
Personalmente me viene de perlas, ademas de genial, me daba a mi el mismo fallo el phodrive. Sacalo y muchas gracias por la contribucion!!! GRACHIE GRACHIE!!!
Me parece genial que hayas implementado un driver de FS porque
es mucho más versátil y cómodo para trabajar sobre la consola
directamente. A mí desde luego me vendría muy bien y yo voto a
favor de que lo hagas público :)
Yo trabajo en Linux sobre PowerPC. El gplink me va bien, pero
es un poco limitado trabajar sólo con él.
Eddie Felson
09/12/2004, 14:46
Trata de sacarlo Carlos, trata de sacarlo por Dios. Con esto te lo digo todo, la única razón por la que utilizo Windows a veces es por este tema (la gp y sus archivos), como no vas a sacarlo hombre si a un montón de nosotros nos viene como caido del cielo.
ME ofrezco como Betatester y como lo que haga falta para apollar tu proyecto. :arriba: :arriba: :arriba: :arriba: :arriba:
Eddie Felson
09/12/2004, 21:00
La verdad pensaba que en esta comunidad esta noticia iba interesar mucho más :cagonto: , no sé, espero que no te desanimes y aun así lo saques que aunque seamos tres te lo agradeceriamos mucho :rolleyes: :rolleyes:
por mi que lo saque, en breve estare moviendome en linux ya que tengo previsto instalar en mi PC el Fedora Core3, y quien sabe, puede que me sea util dicho programa.
bulbastre
09/12/2004, 22:06
Sácalo, que uso linux y voy desesperao!!!
Esas propiedades que has discho... Significa que podré mover subcarpetas y todo a mi gp?
Wenas!
Actualmente se puede navegar por toda la estructura de directorios, conocer el tamaño de los archivos asi como el espacio libre en la unidad. Se pueden crear/borrar tanto ficheros como directorios, es decir, se pueden copiar jerarquias completas a y desde la GP. Se pueden abrir ficheros directamente desde ella para leerlos y solo me keda implementar el renombrado de ficheros/directorios :).
La navegacion va un poco lenta cuando hay muchos ficheros en un mismo directorio pero espero resolverlo usando unas pekeñas caches, ke ya uso para la lectura/escritura de ficheros. La primera vez ke se lee un fichero tarda en acceder, pero la segunda es inmediata :)
Tambien realiza un intento de conversion de los nombres de los ficheros a formato 8.3, aunke bajo ciertas condiciones (ficheros empezando por punto) falla estrepitosamente.
En cuanto limpie un poco el codigo sacare la primera version, y las optimizaciones de rendimiento ya las ire haciendo con el tiempo. Por supuesto tendra licencia GPL.
Ojala sea de utilidad de alguien, porque yo no podia aceptar ke pudiese montar hasta mi movil para subir y bajar melodias y juegos y solo un acceso por comandos en mi flamante GP ;).
Salu2
Lo de convertir los archivos a 8.3 para que es? Pienso que te puedes ahorrar el trabajo, porque precisamente una de las virtudes del phodrive es que se salta esa limitacion, y asi, por ejemplo, puedes meter tus colecciones de mp3 con sus nmbres completos.
Lo de 8.3 solo da problemas con algunos juegos, pero en esos casos los creadores ya se ocupan de que ninguno de los archivos que usan tenga mas de esa longitud.
Me alegra verte por aqui y tan activo desde el principio, no suele ser comun ver un primer post de un miembro anunciando una aplicacion :) Y respecto a sacarlo o no, no te lo plantees, siempre vienen bien todas las nuevas releases, sea lo que sea.
Un saludo
Wenas!
No se si sera cosa del protocolo PC-Link o del gplink ke he tomado como base, xo si un fichero no tiene un nombre 8.3 directamente lo ignora :(. No se como lo hara el phoDrive o el protocolo "Mass Storage" para discos USB, xo la conversion es la unica solucion ke se me ocurre.
En un futuro despues de ke sake esto y si tengo ganas kizas modifike el gpDrive o phoDrive xa ke sea compatible con Linux o lo haga desde el otro lado y comunike con el phoDrive actual, xq esta claro ke el protocolo PC-Link es muy sencillo y facil de implementar, xo tb muy limitado.
Salu2
Eddie Felson
12/12/2004, 14:05
Pues me alegro mucho que tu proyecto siga adelante, además me conforta ver que lo tienes todo superconcretado por lo que supongo que no lo dejarás a medias.
Venga ánimo y suerte
Wenas!
Despues de unos dias depurando y limpiando (he intentado ke sea lo mas estable posible) creo ke ya puedo sacar la primera version.
He intentado explicar de la forma mas sencilla la instalacion en el README adjunto, pero realmente es bastante complicado para gente inexperta en el entorno Linux.
Si previamente os funcionaba el gplink, solamente teneis ke instalar el FUSE, ke se compone de un modulo para el kernel y un conjunto de utilidades. Bajo un sistema Debian se puede 'apt-get install libfuse-dev fuse-utils fuse-source', despues en /usr/src descomprimes el fuse.tar.gz y en modules/fuse/ lo de siempre: configure && make && make install. Tambien se puede bajar desde http://fuse.sourceforge.net e instalar el pack en el ke viene todo junto para cualkier distribucion.
Leeros cuidadosamente el README (en mi pedazo ingles de Vallekas) ke indica lo ke teneis ke modificar en el Makefile o en los fuentes para adecuarlo a los paths dnd kereis instalarlo y dnd tengais las herramientas de FUSE.
Muy probablemente tenga cantidad de fallos y cuando se ha visto un programa ke funcione a la primera a todo el mundo sin un proceso de beta-testing?? :)
Realmente si conseguis ke os funcione os mereceis un premio. Para ke luego digan ke Linux esta preparado para el escritorio... :rolleyes:
Salu2
Thx, en cuanto lo consiga hacer funcionar (no se si me veo capaz...) te comento lo que me ha parecido. :D
Sigue asi :brindis:
Yo no uso demasiado linux (realmente nada :rolleyes: ) pero lo voy a instalar cuando tenta tiempo y ésto me vendrá de perlas también.
Sal2 y gracias x tu contribución :) :brindis: :saltando:
Wenas!
Vaya! Es una pena ke mi programa le interese a tan poca gente (Solo 2 descargas y sospecho ke probadas sin exito). Tambien es verdad ke con mi pedazo explicacion de instalacion asusta a cualkiera :rolleyes:.
Yo mientras tanto lo uso perfectamente y el primer beneficiario soy yo ke por eso lo hice... :)
Espero tener un mayor publico con mi proximo proyecto... (Lastima no tener mas tiempo libre)
Salu2
electron
15/12/2004, 01:05
Dale tiempo, yo voy a bajarmelo ahora mismo. ;)
Eddie Felson
26/12/2004, 13:07
Crok digamos que yo por lo menos toy intentando aprender más o menos como parchear el kernell que es lo que hay que hacer con tu programa para instalarlo, como soy un recien llegado a linux me resulta un poco complicado, pero en cuanto lo tenga claro instalo tu programa fijo.
la única razón por la que uso windows es por el phodrive así que imaginate las ganas de probarlo que tengo, Saludos :brindis:
bulbastre
26/12/2004, 14:04
Tranqui croc. Apunta otra descarga, pero es que ahora no tengo tiempo. Hay mucha más gente a la que le interesa, eso seguro. Pues hay muchos aquí que usan linux pero que tienen otra partición con windows con la que hacen la transferencia gp32-pc, pero así les será más fácil.
En cualquier caso, no te desanimes y sigue adelante :arriba:
Eddie Felson
26/12/2004, 14:52
La verdad que no te he dado ánimos y te los debería a ver dado ahora mismo toy con el Fuse sufriendo.
Es de elogiar lo que has hecho y es una gran contribución, no te desanimes que en el fondo a mucha gente le interesa pero estarán como yo que no saben o no se atreven.
Muchas gracias por tu Gpfs :saltando: :saltando:
Topochan
26/12/2004, 15:34
Ya lo he provado, va de lujo! es lo que necesitaba, muchas gracias, linux powa! :arriba: :arriba: :arriba: :arriba:
Muchas gracias y animo!!!
A probarlo.
Parece que va terminado el reinado de tinieblas sobre herramientas para linux.
bulbastre
26/12/2004, 22:40
LTK666, espero que seas el profeta que alumbre el camino de linux, y acabe con su reinado de tinieblas :rolleyes:
Wenas!
Vaya! No hay nada como salir en la portada! :D Y ademas se ha propagado a otras paginas como gp32x.com donde ya se contabilizan mas de 40 descargas.
Muchas gracias a todos!
Tambien me he dado cuenta ke parece ke hay un bug con ficheros muy grandes (de mas de 5 o 10 megas creo) ke provoca ke se kede en un bucle infinito y se lleve toda la CPU. No es grave ni corrompe ni nada (ctrl + c, remontar y listos :P) xo es un coñazo. Si a alguien mas le pasa ke me lo diga y a lo mejor me pongo a mirarlo o ke lo arregle el mismo ke xa eso sta el codigo libre... :D
A parte del dichoso bug con ficheros de tamaño 0 ke se lo comunicare al autor de GPLink xq es en su parte de codigo ke he cogido... :D
Salu2
Eddie Felson
25/01/2005, 18:43
Por fin me atrevido a intentar instalarlo y ya voy por mal camino, os cuento a ver si me podeís ayudar, como podeíos ver no estoy muy puesto en linux
1º Me funciona el gp link por lo que solo necesito el Fuse, lo bajo y compilo en usr/src/ todo bien sin ningún error.
2º Intento instalar el gpfs (cuyo directorio es /home/yomismo/gpfs) modifico el makefile modificando las lineas :
gpfs: ${OBJS}
${CC} -o gpfs ${OBJS} /usr/lib/libfuse.a -lpthread ${LDFLAGS}
static: ${OBJS}
${CC} -static -o gpfs ${OBJS} /usr/lib/libfuse.a -lpthread ${LDFLAGS}
por lo siguiente:
gpfs: ${OBJS}
${CC} -o gpfs ${OBJS} /usr/src/fuse-2.1/lib/libfuse.a -lpthread ${LDFLAGS}
static: ${OBJS}
${CC} -static -o gpfs ${OBJS} /usr/src/fuse-2.1/lib/libfuse.a -lpthread ${LDFLAGS}
Que es donde está la librería libfuse.a bueno lo que pone al mirar el directorio eslibfuse.la pero lo cambiado y me da el mismo error
obteniendo siempre el mismo error que os pongo aquí:
# make
gcc -I. -I/include -I/usr/include -c -o gpfs.o gpfs.c
In file included from gpfs.c:10:
/usr/local/include/fuse.h:22:2: #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
gpfs.c:525: warning: "struct fuse_statfs" declared inside parameter list
gpfs.c:525: warning: its scope is only this definition or declaration, which is probably not what you want
gpfs.c: In function `gpfs_statfs':
gpfs.c:529: error: invalid application of `sizeof' to incomplete type `fuse_statfs'
gpfs.c:533: error: dereferencing pointer to incomplete type
gpfs.c:534: error: dereferencing pointer to incomplete type
gpfs.c:535: error: dereferencing pointer to incomplete type
gpfs.c:536: error: dereferencing pointer to incomplete type
gpfs.c: At top level:
gpfs.c:561: warning: initialization from incompatible pointer type
make: *** [gpfs.o] Error 1
[root@localhost gpfs]#
No sé que estoy haciendo mal (lo de los permisos todavía no lo he hecho)
Gracias por la ayuda que me podaís dar :) :) :) :) :)
A ver si de una vez puedo probar el maravilloso invento de Croc :rolleyes: :rolleyes:
Wenas!
El problema esta en la version de fuse. Todo el desarrollo lo he hecho con las versiones 1.1 y 1.3. Por lo ke veo tu stas con la 2.1 y probablemente hayan cambiado varias cosas estructurales y no sea compatible.
De todas formas stoy pensando realizar una reestructuracion de codigo y eliminar la dependencia de fuse y crear un modulo de kernel directamente. Aunke no contengais la respiracion hasta entonces... :)
Por cierto, eso de ke es una maravilla... Puede ke tenga su utilidad (x eso lo hice) xo la estabilidad deja mucho ke desear y tiene unos cuantos fallos molestos ke he ido descubriendo al usarlo con el tiempo y no tenia ganas de corregirlos... :(
Salu2
Definitivamente y despues de ver esto, no pienso instalar linux nunca, por lo menos no lo instalaré mientras instalar cualquier programa sea mas dificil que hacer doble click en el archivo setup.exe; y que conste que soy programador y llevo toda la vida en esto de la informática.
Por otra parte, te felicito por el programa que has hecho, si es asi de dificil de instalar, ni me imagino como habrá sido de programar.
Wenas!
Desde luego ha costado de programar xq era lo primero ke he desarrollado de este tipo, xo lo he hecho con mucho gusto y los conocimientos ke me ha aportado no tienen precio :D
Y esto es dificil de instalar xq requiere una libreria poco comun y ademas se trata de un modulo de kernel, un ekivalente a un driver de windows, ke x mi experiencia personal, puede llegar a dar mas problemas incluso ke en Linux.
De todas formas si hago el cambio de diseño ke tengo pensado, la instalacion sera mucho mas sencilla. Cada uno hace lo ke puede xa mejorar la usabilidad de las aplicaciones. Mi abuela todavia se pregunta xq en Windows tiene ke "Iniciar" si lo ke kiere es "Apagar"... :)
Salu2
Eddie Felson
26/01/2005, 00:42
Bueno sigo con mi lucha con el pinguino :canon2: :canon2:
He instalado Fuse 1.3 y bueno ahora el error es diferente, de nuevo he tenido que modificar el makefile os pongo el error:
# make
gcc -I. -I/include -I/usr/include -c -o usb_drv.o usb_drv.c
usb_drv.c:3:17: usb.h: No such file or directory
usb_drv.c:9: error: syntax error before '*' token
usb_drv.c:9: warning: data definition has no type or storage class
usb_drv.c: In function `usb_connect':
usb_drv.c:18: warning: assignment makes pointer from integer without a cast
usb_drv.c:19: error: dereferencing pointer to incomplete type
usb_drv.c:20: error: dereferencing pointer to incomplete type
usb_drv.c:20: error: dereferencing pointer to incomplete type
usb_drv.c:21: error: dereferencing pointer to incomplete type
usb_drv.c:22: error: dereferencing pointer to incomplete type
usb_drv.c:32: warning: assignment makes pointer from integer without a cast
make: *** [usb_drv.o] Error 1
A lo mejor es que no tengo instalado el libusb, pero me extraña por que el gplink funciona o por lo menos algún archivo de vez en cuando me deja bajar. De nuevo gracias por ante mano, y Croc cualquier mejora de tu programa merecerá la pena
Topochan
26/01/2005, 00:43
Buenas queria hacer un apunte
chipan, lo que pasa es que el codigo ni esta preparado para instalar ni nada, son los fuentes, los setup.exe seria en linux como los .deb o .rpm(que bueno son dos cosas diferentes pero en fin) en linux las aplicaciones se instalan aun mas facil que windows(hay gente que opina lo contrario). Yo veo mas facil escribir "apt-get install gimp"(que el solo baja lo que necesite y lo instala), que buscar el programa en internet(suponiendo que sea gratuito, libre o demo y no necesitemos un password para robar el programa) ejecutarlo, darle a siguiente, siguiente, acepto, siguiente y finish".
Para hacer los setup con los archivos generados despues de compilar es una tarea tan ardua y dificil que hacer un rmp o deb :musico:
Topochan
26/01/2005, 00:46
Eddi, te faltan las libusb-dev(yo uso las 1.8 y compila), instalalas y vuelve a compilar.
Eddie Felson
26/01/2005, 00:52
Gracias por la rapidez, la verdad que lo andaba sospechando mañana lo pruebo que ya es tarde.
Hablando de linux te diré que aunque me ha atrapado, quedan por mejorar en algunos aspectos muy importantes y que se están dejando de lado:como por ejemplo las fuentes (letras) que se ven bien dos de todas las que puedes usar,y para navegar no son las más indicadas, aun así mi deseo es poder quitar windows del ordenador completamente y quedarme con mi pinguino.
bulbastre
26/01/2005, 11:35
Pos yo tengo fuentes para parar un carro...
Topochan
26/01/2005, 15:00
si quieres que te ayude con eso añademe al messenger topo_chan(arroba)msn.com, y te ayudo en lo que quieras :musico: :brindis:
Eddie Felson
26/01/2005, 23:39
Pues acabo de llegar a casa así que ahora intentaré lo del gpfs, gracias por el ofrecimiento, sino no lo logro te agrego y ya coincidiremos :saltando:
Eddie Felson
27/01/2005, 00:15
Bueno pues ya lo he logrado compilar pero no se muy bien que hacer, tengo el fstab las siguientes lineas añadidas
none /proc/bus/usb usbdevfs devmode=0666 0 0
/proc/fs/fuse/dev /mnt/gp32 gpfs defaults,user 0 0
tengo un icono de unidad de disco en el escritorio
Cuando ejecuto gpfs me sale lo siguiente:
[root@localhost gpfs]# ./gpfs
Usage: mount -t gpfs [-o options] mountpoint
Options:
uid=<value> owner id
gid=<value> group id
umask=<value> umask value (octal)
aquí no se seguir la verdad que lerdo soy, he probado con:
[root@localhost gpfs]# ./gpfs mount -t gpfs
invalid option: -t
usage: ./gpfs mountpoint [options] [-- [fusermount options]]
Options:
-d enable debug output
-s disable multithreaded operation
-h print help
Fusermount options:
see 'fusermount -h'
bueno alguna sugerencia, ya casi está jo
:shock: :shock: :shock:
Pues por fin lo he logrado hacerlo funcionar,¿creo? .Hay que hacerlo desde la consola pero ahora se puede trabajar con los comandos de simpre de linux por lo que es mucho más comodo que antes.
Felicidades Crock por tu programa por fin he podido probarlo y la verdad que me ha encantado, estoy esperando ya impaciente a las siguientes mejoras :arriba: :arriba:
Wenas!
Me alegro de ke haya funcionado! Eres la primera persona de la ke tengo constancia ke ha conseguido instalarlo. Lo cual es bastante triste porque he contabilizado unas 100 descargas ya (70 en gp32x, 25 aki y 5 desde mi servidor), xo tb es comprensible dada la dificultad de la instalacion.
No hay mayor satisfaccion ke el reconocimiento... :)
Salu2
Topochan
27/01/2005, 15:45
dos cositas:
Edi: si tienes el icono del dispositivo ya no hace falta que montes en consola, con el icono con el secundario montas y desmontas, yo con gnome2.8 lo hago asi, aunque si te mola mas montar en linea de comando no te lo prohibire(es mas, es muy sano, recomendado por 2 de cada 3 geeks XDDDD). Pero amos ya has hecho una de las cosas mas dificiles de linux compilar con dependencias XDDDD.
Croc: yo lo compile y lo use cuando lo sacastes, ta muy bien, molesta un poco la libreria fuse pero que vamos hacerle. Si te sirve creo saber pq el phodrive no funciona en linux, parece ser que el ID de dispositivo de almacenamiento no es el estandar, por eso no lo detecta como tal(en win si, no se pq), con un poco de suerte en averiguar el ID correcto y un poco de exadecimal se puede arreglar. Y sigue esforzandote, que lo haces de pm.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.