Salida de pantalla a un fichero

Moderador: Fundadores

Responder
Avatar de Usuario
elfoscuro
Demonio segundo orden
Demonio segundo orden
Mensajes: 1831
Registrado: 01 Abr 2013, 22:00
Been thanked: 26 times

Salida de pantalla a un fichero

Mensaje por elfoscuro »

Buenas.

Tengo en mente una especie de lanzador para cargar juegos en Spectrum, usando el +3e y que sirva para cargar los juegos de la CF. La idea sería algo parecido al Norton Commander, usando las particiones como directorios, y mostrando los ficheros de cada una.

Pero, para ello, necesito algo muy simple en MSDOS, y que no se como sacar en BASIC... Algo tan sencillo como "dir > salida.txt" en MSDOS.

¿Sabéis como lo puedo hacer? La idea sería poder leer el directorio de ficheros y pasarlo a una matriz de strings, que luego usaría para mostrar la lista.

Un saludo.
Fin de impresión
cuek! tacha

Re: Salida de pantalla a un fichero

Mensaje por cuek! tacha »

Hola elfoscuro, no tengo idea de como son los comandos del +3e. Tampoco tengo idea de que si lo que se me ocurrio es lo que necesitas :?: pero aqui va.

Lo que se me ocurre es hacer un programita para ir salvando en un "DIM a$(x,32)" donde x=(cantidad de filas a guardar), hacer un "DIR" y luego de cada "scroll?" hacer un Break y llamar a una linea en basic, donde se comience a copiar el contenido de pantalla a a$ donde habia quedado x.

EJ:
quiero copiar 3 pantallas de directorio en un array$ entonces primero copio el siguiente listado:

10 DIM a$(65,31) :REM donde 65 es (22*3)-1 | 22 es la cantidad de filas*pantalla y le resto 1 por la linea 0
20 LET x=0
30 FOR f=0 to 21
40 FOR g=0 to 31
50 LET a$(f+x,g)=SCREEN$(f,g)
60 NEXT g
70 NEXT f
80 LET x=x+22
85 IF x=66 THEN SAVE "DIRECTORIO" DATA $()
86 STOP

Luego:

DIR+ENTER
Scroll? = BREAK
GOTO 10 + ENTER

STOP statement, 0:1

DIR+ENTER
Scroll? = ENTER
Scroll? = BREAK
GOTO 30

STOP statement, 0:1

DIR+ENTER
Scroll? = ENTER
Scroll? = ENTER
Scroll? = BREAK
GOTO 30

star tape, then press any key.

Bueno, y eso a mano alzada y a codigo cortado y despilfarrado es lo que se me ocurre para copiar en un array$ lo que ha pasado por la pantalla luego de los DIR

Para luego verlo typeas:

DIM a$(65,31)
LOAD "DIRECTORIO" DATA

20 FOR f=0 to 65
30 PRINT a$(f)
40 NEXT f

GOTO 20 (nunca hagas un RUN porque borrarias lo cargado).

si esto no es lo que buscabas bueno, ya me puedes mandar a freír espárragos con la rubiecita del Mago de OZ.

SALAM!
Avatar de Usuario
tacha Uruguay
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 3162
Registrado: 04 Abr 2013, 20:22
Ubicación: Montevideo, Uruguay
Has thanked: 50 times
Been thanked: 34 times
Contactar:

Re: Salida de pantalla a un fichero

Mensaje por tacha »

bueno, esto del foro esta andando mal, tuve que cambiar mi nombre de usuario para responder, y ni siquiera estaba registrado ese nombre !!! XD
66 6C 6F 70 70 69 6E 67 20 6D 61 73 63 61 20 50 30 6C 6C 34 / 6D 61 73 20 63 6F 74 69 6C 6C 61 20 73 65 72 E1 73 20 74 75 20 49 7A 61 72 6F 20 3A 70
Avatar de Usuario
Izaro España
Fundador
Fundador
Mensajes: 3341
Registrado: 02 Abr 2013, 10:39
Ubicación: Valencia (mas alla del sol)
Has thanked: 14 times
Been thanked: 20 times

Re: Salida de pantalla a un fichero

Mensaje por Izaro »

si señor aqui tenemos otro crack del basic.
01001101 01101001 01110010 01100001 00100000 01110001 01110101 01100101 00100000 01100101 01110010 01100101 01110011 00100000 01100011 01101111 01110100 01101001 01101100 01101100 01100001 00101110
Responder

Volver a “Sinclair”