El 02/12/2015 a las 21:47, Marcos Cruz [email protected] [forth-es] 
escribió:
> En/Je/On 2015-12-02 19:25, Miguel Angel Rodriguez Jodar
> [email protected] [forth-es] escribió / skribis / wrote :
>
> Entonces mis conocimientos de C están más oxidados de lo que creía.
> Gracias por la actualización tan detallada. No recordaba que en la
> fuente se pudiera hacer todo eso expresamente.

Mira: el programa que puse en el correo anterior...

> : BOLD
> 12288 11264 DO
> I C@ DUP 2 * OR I C!
> LOOP
> ;

En C se haría así:

main()
{
   char *p = 11264;

   while (p!=12288)
     *p++ = ((*p)<<1)|(*p);
}

Como lo anterior puede no quedar muy claro para un neófito de C, el programa se 
puede reescribir para que quede un poco más claro:

main()
{
   char *p = 11264;
   int i;

   for (i=0;i<1024;i++)
     p[i] = (p[i]<<1) | p[i];
}

> ¿Solo escribible? Tengo hechos algunos jueguecillos en ACE Forth pero no
> recordaba esa limitación. Entonces puedes definir tus propios caracteres
> porque están ya copiados en RAM, pero no puedes leer lo que hay en esa
> zona porque ese rango de direcciones no está conectado como debería...

Correcto. En el ACE original esa zona de memoria no puede leerse.

> Recuerdo que el mapa de memoria de Jupiter ACE es muy peculiar, con
> algunas zonas visibles en más de un rango de direcciones.

Sí. Esto es porque para esas zonas "dobles", uno de los rangos le da prioridad 
a 
la CPU a costa de originar basurilla en pantalla mientras realiza la operación. 
En el otro rango, no se genera basurilla pero la CPU debe esperar a que el 
circuito de video no esté generando imagen.

> Entonces, ¿con el clon FPGA se puede modificar esa zona porque tú lo has
> programado así o porque es una limitación de la descripción que haces de
> los circuitos? Quiero decir, ¿no queda más remedio que que sea
> modificable o podrías recrear el comportamiento exacto de la máquina
> real en ese punto?

Lo he modificado porque yo he querido hacerlo así. Tocando un par de lineas de 
la descripción podría volver a dejarlo con su comportamiento original.

-- 
Miguel Angel
@zxprojects | www.zxprojects.com


------------------------------------

------------------------------------


------------------------------------

Enlaces a Yahoo Grupos

<*> Para visitar tu grupo en la web, ve a:
    http://es.groups.yahoo.com/group/forth-es/

<*> La configuración de tu correo:
    Mensajes individuales  | Tradicional

<*> Para modificar la configuración desde la Web, visita:
    http://es.groups.yahoo.com/group/forth-es/join
    (ID de Yahoo! obligatoria)

<*> Para modificar la configuración mediante el correo:
    [email protected] 
    [email protected]

<*> Para cancelar tu suscripción en este grupo, envía 
    un mensaje en blanco a:
    [email protected]

<*> El uso que hagas de Yahoo Grupos está sujeto a
    las Condiciones del servicio de Yahoo!:
    https://info.yahoo.com/legal/es/yahoo/tos.html

Responder a