Vendo placas adaptadoras para UnAmiga

Discursiones en general sobre el proyecto que no tienen cabida en otro foro / General discussion for uncateorized topics about the ZX-Uno project
pitercio
Mensajes: 8
Registrado: 27 Mar 2018, 00:01

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por pitercio » 09 May 2018, 14:42

Jepalza, te traslado una dudilla que surgió el otro día en el grupo de Telegram: el core de Amiga, tal cual lo tienes, ¿soporta modo RGB además de VGA? Es decir, ¿se le puede activar/desactivar el Scan-doubler? Ello permitiría utilizar un conector VGA->SCART como los que hace Antonio Villena y conectarlo a una tele con Euroconector.
Gracias!!

Avatar de Usuario
jepalza
Mensajes: 612
Registrado: 02 Oct 2015, 18:52

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por jepalza » 09 May 2018, 16:11

pitercio escribió:Jepalza, te traslado una dudilla que surgió el otro día en el grupo de Telegram: el core de Amiga, tal cual lo tienes, ¿soporta modo RGB además de VGA? Es decir, ¿se le puede activar/desactivar el Scan-doubler? Ello permitiría utilizar un conector VGA->SCART como los que hace Antonio Villena y conectarlo a una tele con Euroconector.
Gracias!!
La opción la tiene, pero la deshabilité para mis pruebas, por que no lo iba a usar. Si te sirve de algo, en las primeras pruebas, al desconocer el funcionamiento del core, esa opción se activaba sola por defecto (al no asignarle yo un valor, cogía por defecto "0", que es "activo") y no veía imágen en pantalla, peeerooo.... el monitor mostraba "signal 15khz out of range" o algo parecido ;-)

Avatar de Usuario
spark2k06
Mensajes: 1137
Registrado: 12 Feb 2016, 13:58

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por spark2k06 » 11 May 2018, 08:19

He encontrado esto que también se podría mirar:

https://www.jamieiles.com/80186/


Implementation

Full synthesizable SystemVerilog
C++ reference model
FPGA reference designs for Terasic DE0-Nano and DE0-CV
Extensive test suite verified against C++ model, RTL and FPGA
Complete Docker build environments
Full development documentation and programmers guide

Reference Design

SDR SDRAM controller
SD card for fixed disk emulation
8259 PIC-lite controller
UART
8254 PIT-lite timer operating in mode 2 only.
CGA controller with VGA output
PS/2 controller with keyboard and mouse support
8KB direct mapped cache for SDRAM accesses

Features

Binary compatible with the Intel 80186 core
MS-DOS
FreeDOS
OpenWatcom/GCC ia16-elf compilers
Separate data/IO and instruction busses
1MB addressable segmented memory
64KB addressable IO space
Lock signal for atomic accesses
256 external interrupts
1 non-maskable interrupt
3 stage fetch/decode/execute pipeline
Debug interface suitable
JTAG TAP compatible
Register/Memory access
Execution control
FPGA builds (Intel Cyclone V)
60MHz FMax
~1800 ALMs

Avatar de Usuario
spark2k06
Mensajes: 1137
Registrado: 12 Feb 2016, 13:58

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por spark2k06 » 11 May 2018, 08:36

Vale, tienen una errata... es MCGA sobre VGA... no CGA :(

Lo bueno es lo que parece que ocupa:

~1800 ALMs

Lo mismo entra incluso en el ZX-Uno y también se puede portar a éste...

"ISE does not support SystemVerilog but the new Xilinx design tool, Vivado does. The limitation is that Xilinx have not made it backwards compatible - it only works on the latest Virtex/Kintex-7 and Spartan-7 parts. If you want to use spartan-6 . You will need to use SystemVerilog synthesis in another tool like Mentor Graphics Precision Synthesis and import into ISE or Vivado for the final layout"

https://forums.xilinx.com/t5/Welcome-Jo ... d-p/773563
Última edición por spark2k06 el 11 May 2018, 09:55, editado 1 vez en total.

Avatar de Usuario
spark2k06
Mensajes: 1137
Registrado: 12 Feb 2016, 13:58

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por spark2k06 » 11 May 2018, 09:15

Examinando el código... también parece tener soporte para CGA 320x200 4 colores, para las dos paletas :-)

Código: Seleccionar todo

static int __set_video_mode(int mode)
{
    switch (mode) {
    case 0x2:
    case 0x3: // 80x25 chars B&W
        outb(0x3c0, 0x0c);
        outb(0x3d8, (1 << 0) | (1 << 3));
        _in_video_mode = 0;
        __scroll_up(0, 24, 0, 79, 0x07, 25);
        break;
    case 0x4: // 320x200 4 color graphics
    case 0x5: // 320x200 4 color graphics
        outb(0x3c0, 0x0c);
        outb(0x3d8, (1 << 1) | (1 << 3));
        memset_seg(frame_buffer_segment, (void *)frame_buffer_offset, 0,
                   (320LU * 200LU) / 4LU);
        _in_video_mode = 1;
        break;
    case 0x13: // 320x200 256 color graphics
        outb(0x3c0, 0x41);
        outb(0x3d8, (1 << 1) | (1 << 3));
        memset_seg(vga_frame_buffer_segment, 0, 0, (320LU * 200LU));
        _in_video_mode = 1;
        break;
    default: return -1;
    }

    return 0;
}

Avatar de Usuario
jepalza
Mensajes: 612
Registrado: 02 Oct 2015, 18:52

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por jepalza » 11 May 2018, 18:35

Lo miro el "finde", a ver si es útil.

Avatar de Usuario
jepalza
Mensajes: 612
Registrado: 02 Oct 2015, 18:52

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por jepalza » 13 May 2018, 08:42

spark2k06 escribió:Examinando el código... también parece tener soporte para CGA 320x200 4 colores, para las dos paletas :-)
Estoy mirando el código de la página que me has indicado. Es muy diferente al del Next186, es como empezar de nuevo. Y lo peor, es que es "SystemVerilog", que es completamente nuevo para mi, a pesar de su parecido al verilog que he aprendido, las diferencias son suficientes como para no entenderlo a la primera.
La impresión que me ha dado, leyendo, es que no es muy compatible, que le gana el Next186, y que tiene peor soporte VGA.
A ver si consigo compilar el código. Como no tiene proyecto creado, lo estoy creando yo desde cero, y es muy lento.

edito:
he conseguido crear un proyecto para compilar el S80186, pero algo no me cuadra. Me da la sensación de que este señor, "no" ha incluido algo del core, quizás por olvido, quizás para no regalar su trabajo. Esa sensación viene dada, por el hecho de que al compilar, me arroja cientos de referencias a variables no declaradas, docenas y docenas de ellas, que el compilador indica como "no declaradas". Lo mas obvio es pensar que me he olvidado de incluir algún archivo con definiciones o lo que sea, pero es "imposible", por que , haciendo la búsqueda mas simple del mundo, la de buscar en todos los archivos descargados de su web, en ninguno, absolutamente, aparecen esas variables declaradas o inicializadas. Directamente, en el core, se emplean como "ya" declaradas, y directamente quiere usarlas, pero al desconocer su valor, da error. Voy a invertir un ratito mas, pero sigo pensando, que no ha incluído todo, que se ha dejado algún fichero a posta, para evitar que se use su trabajo.

Avatar de Usuario
spark2k06
Mensajes: 1137
Registrado: 12 Feb 2016, 13:58

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por spark2k06 » 14 May 2018, 16:52

Instalando el docker tal como se indica en su github yo no he tenido problemas de compilación:

Imagen
Imagen

Avatar de Usuario
jepalza
Mensajes: 612
Registrado: 02 Oct 2015, 18:52

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por jepalza » 14 May 2018, 19:51

Yo uso Quartus y windows 7
El proyecto original viene para compilar mediante "cmake", pero yo no lo tengo instalado, ni lo quiero hacer. Tengo el windows con mas compiladores que dedos de la mano, y no quiero seguir instalando mas cosas, que al final, unas se pisan a otras y alguna acaba "no" funcionando.

Pero mira, te digo dos de las variables que me da error de "no declaradas", y que en ningún lado del código aparecen:
a_sel == ADriver_RA ? reg_rd_val[0] : esta línea, la variable ADriver_RA no está definida en ningún lugar, y da error.

y esta otra:
C <= update_flags[UpdateFlags_CF] ? flags_in[CF_IDX] : C; la de updateflags_cf tampoco existe,

Da mas de una docena de variables no definidas, y buscando entre todos los ficheros que vienen en el comprimido bajado de la red, no existen definidas, solo referenciadas y usadas, pero sin definir.

Podría ser, que el Quartus las autodefine, pero tengo que activar alguna opción. Ya miraré de nuevo a ver si lo averiguo.

También podría ser, que he añadido ficheros de mas en el quartus, y estoy llamando a módulos no usados en el proceso final, pero como le proyecto lo he creado yo de cero, por que no puedo usar el cmake, lo mismo me he colado.

Avatar de Usuario
spark2k06
Mensajes: 1137
Registrado: 12 Feb 2016, 13:58

Re: Vendo placas adaptadoras para minimig de jepalza

Mensaje por spark2k06 » 14 May 2018, 20:01

Por eso he usado y está muy bien VirtualBox. Instalas en un momento un ubuntu y montas un docker sin interferir para nada en Windows. Ya buscare esas variables y te las paso, ya en un nuevo hilo si te parece para no ensuciar éste :-)

Enviado desde mi Thor mediante Tapatalk

Responder