Concurso MSX-BASIC 2011 – Reglas

40 Respuestas

  1. Jos'b dice:

    Por fin, las reglas,

    me ha gustado mucho la inclusión del trozito de código máquina, ahora en vez de hacer “for/vpoke/next” para cargar gráficos vamos a hacer “for/poke/next” que es más rápido.

    me parece un poco absurdo.

  2. Jos'b dice:

    Como punto positivo, creo que es interesante la inclusión de bloques BSAVE””,S ¿supongo?

    De cualquier manera, empezaré a pensar mi entrada

  3. cybernoid dice:

    Hombre Job’s

    Puedes hacer el bucle o cargar los graficos con bload en ram y luego ejecutar la rutina en asm ¿no?

    yo no lo veo tan absurdo…

  4. Jos'b dice:

    me rectifico, llevas razón cybernoid, habia dado por hecho que se admitian los juegos en .dsk por lo que no veía claro el uso de la rutina cuando se puede usar bload””,s.

    Despues de releer las normas me he dado cuenta que solo se admite formato .cas

    no sé, no me convence mucho …

  5. cybernoid dice:

    yo también me he llevado una pequeña decepción con las reglas.

    Pero bueno, es lo que hay, hubiese preferido la posibilidad de usar DiskBasic a ese “pedacito” de código maquina.

  6. Tomi dice:

    Me uno también al desconcierto… creo que están curradas y demuestran empeño, cuando menos. Pero sigo sin entender, por ejemplo, qué mal hace usar BLOAD””,s, o el acceso a disco. No tengo ni idea de cómo se hace eso de cargar la rutina ASM con poke’s, al menos se podría dar resuelto ese punto ya que viene impuesto: directamente un código básic que copie todo (tiles, sprites, colores) a la VRAM, como hacemos con BSAVE/BLOAD, y que todos usemos el mismo… Aun así me parece liar la madeja innecesariamente, porque nadie va a coger estos juegos y cargalos en cinta…
    Un saludo a todos.

  7. SapphiRe dice:

    Cargar la rutina con pokes es tan sencillo como cargar los siguientes 12 bytes (en decimal):

    33,L,H,17,E,D,1,C,B,195,92,0

    y llamar a la dirección donde se hayan cargado. Los valores de H,L,D,E,B y C son:

    H=origen DIV 256
    L=origen MOD 256
    D=destino DIV 256
    E=destino MOD 256
    B=longitud DIV 256
    C=longitud MOD 256

    Según las reglas, la rutina puede ser llamada tantas veces como se quiera y los valores de origen, destino y longitud modificados a voluntad. Es lo más genérico para que cualquiera pueda adaptarlo a las necesidades específicas de cada juego.

  8. cybernoid dice:

    Konamito esta permitida cualquier generación de MSX?

  9. Konamito dice:

    Si, cybernoid. El juego puede ser para cualquier generación MSX. Eso sí, todos participan juntos, no hay categorías…

  10. YMN dice:

    Bien, después de observar la normativa del contest comentar lo siguiente:

    Se puede apreciar en la normativa la inclusión de algunas de las opiniones y sugerencias que se publicaron en su momento, como la rutina assembler, etc.

    Aunque la normativa es correcta de forma general, existen puntos en relación a los jueces que deberían ser rectificados de forma inmediata:

    Si en su momento el organizador expuso que “¿Creéis que es fácil encontrar a gente dispuesta a dar de su tiempo para examinar con lupa los juegos?”, pués lo ha solucionado remitiendo la responsabilidad a los participantes.

    El problema de esto, son los posibles efectos sobre el resultado, las posibilidades son:

    – Efecto Eurovisión. Suficiente que un grupo se organice, para provocar un trato de favores.

    – Dispersión de resultados. Es posible, que la intención de algún participante sea perjudicar a otro participante, con premeditación y alevosía, por algún motivo fuera del contest.

    Se deben de aplicar medidas para evitar este tipo de prácticas fraudulentas.

    Para evitar la dispersión de resultados, las posibles soluciones son:

    – Anular las valoraciones que presenten un excesivo distanciamiento con la media.

    – Se debe aplicar otro tipo de estadístico para la nota final emitida por cada participante para cada uno de los juegos, por ejemplo la moda.

    En este sentido, cada participante evalua la jugabilidad, originalidad, gráficos y sonido para cada uno de los juegos.

    La organización evalua la moda de estos apartados, y realiza la media.

    Por otro lado, no existe el derecho de anonimato así como de no valorar, posiblemente para dar transparencia a las valoraciones, pero esto presenta otra serie de problemas:

    – Agravio comparativo entre participantes y aplicaciones, con repercusiones de tipo social.

    – Valoraciones inadecuadas de los participantes, para evitar conflictos.

    El participante puede solucionar esto, valorando todas las participaciones con la misma puntuación, evitando toda responsabilidad.

    En cuanto a los comentarios sobre las preferencias en el uso de DiskBasic, para cargar pantallas gráficas, la adaptación es muy fácil y evita la restricción de la unidad de disco.

    En relación a los premios, no se puede entender que el tercero no tenga camiseta.

  11. cybernoid dice:

    YMN si un grupo de usuarios se organiza para conseguir un juego de MSX y una camiseta es que hasta yo se la pago xDDDD

  12. Tomi dice:

    Konamito, ¿podrías publicar un código basic que implemente la rutina en ensamblador de las bases del concurso, a modo de ejemplo?

  13. YMN dice:

    Bien, no se trata de que “un grupo de usuarios se organize para conseguir un juego de MSX”, sino la posibilidad de tergiversar resultados que se alejen de una valoración equitativa.

    Por otro lado, el hecho que expresa la expresión de “hasta yo se la pago”, se puede aplicar observando las bases de la normativa.

    En relación al ejemplo solicitado, @Tomi sería interesante tu email de contacto, se adjunta el siguiente código que adapta un archivo gráfico de disco:

    – El archivo GFX se copia en CAS:

    BLOAD “GFX.SCR”,&H9000

    BSAVE “CAS:GFX”,&H9000,&H9000+16*1024

    – Se implementa el loader:

    10 BLOAD”CAS:”

    20 FOR I=&HD000 TO &HD00B:READ A$:POKE I,VAL(“&H”+A$):NEXT

    30 DEFUSR=&HD000:A=USR(0)

    40 GOTO 40

    50 DATA 21,00,90,11,00,00,01,00,40,C3,5C,00

  14. cybernoid dice:

    YMN creo que te lo tomas todo muy en serio 😛 esperemos que esos desalmados no haga acto de presencia en el concurso. jejej 😉

  15. Konamito dice:

    Tal y como manifiesto en esta entrada del blog, el concurso queda suspendido por los motivos expuestos en la misma.

    Gracias de todas maneras por vuestro apoyo.

  16. Revre dice:

    Konamito, ¿vas a reabrir el concurso?

    • Konamito dice:

      He estado meditando al respecto y la respuesta es sí. Estoy preparando una entrada para comentar el rumbo que tomaré respecto a Konamito.com en adelante.

      Pero desde ya podéis considerar activo nuevamente el Concurso MSX-BASIC 2011.

  17. josepzin dice:

    Konamito: no me queda claro si el concurso sigue vigente o lo has cancelado, lo pregunto para actualizar la agenda de RetroInvaders

  18. JamQue dice:

    Hmmm mmmm pensando que hacer en Basic…hmmm. 😉

  19. Konamito dice:

    Actualizadas las reglas con código MSX-BASIC para cargar la rutina en ensamblador.

  20. Tomi dice:

    Se agradece la ayuda con el código de la rutina en ensamblador, ahora sólo falta probarlo… 🙂
    A ver si se instaura la moda de preestrenos, demos y anuncios de futuras entradas al concurso, como en otras convocatorias. Un saludo a todos!

  21. YMN dice:

    Bien, además del extra publicado, la solución de codificación de la rutina assembler es implementar una aplicación de producción adaptable, o sea, un programa que hace programas.

    La aplicación solicita los mismo datos que el extra de las bases del contest y genera el código fuente del cargador, implementado para ser llamado con GOSUB.

    Para procesar el código generado:

    Posicionar el cursor en la línea 10 y pulsar 2 veces return.
    Teclear GOSUB 10 + return.

    1 DEFFNT(N)=(-(N0)):DEFFNH(N)=INT(FNT(N)/256):DEFFNH$(N)=HEX$(FNH(N)):DEFFNL$(N)=HEX$(FNT(N)-FNH(N)*256)
    2 DEFFNS$(A$)=STRING$(2-LEN(A$),”0″)+A$:DEFFNX(N)=VAL(“&H”+HEX$(N))
    3 INPUT “DIRECCION DATOS ORIGEN EN RAM: “;RO:RO=FNX(RO)
    4 INPUT “DIRECCION DATOS DESTINO EN VRAM: “;VD:VD=FNX(VD)
    5 INPUT “NUMERO DE BYTES A COPIAR: “;NB:NB=FNX(NB)
    6 INPUT “DIRECCION RAM DEL CARGADOR ASSEMBLER: “;AD:AD=FNX(AD)
    7 PRINT “10 FOR I=&H”+HEX$(AD)+” TO &H”+HEX$(AD+11)+”:READ A$:POKE I,VAL(“+CHR$(34)+”&H”+CHR$(34)+”+A$):NEXT:DEFUSR=&H”+HEX$(AD)+”:RETURN”
    8 PRINT “20 DATA 21,”+FNS$(FNL$(RO))+”,”+FNS$(FNH$(RO))+”,11,”+FNS$(FNL$(VD))+”,”+FNS$(FNH(VD));
    9 PRINT “,01,”+FNS$(FNL$(NB))+”,”+FNS$(FNH$(NB))+”,C3,5C,00″

    Explicación del código:

    Líneas 1..2:
    Define funciones para obtener el byte alto y bajo en formato alfanumérico,
    establecer el valor hexadecimal con dos dígitos y
    obtener el valor de un número en formato decimal complementado.

    Líneas 3..6:

    Define en formato complementado el origen en RAM de los gráficos a volcar (Ram Origin),
    el destino en VRAM de los gráficos a volcar (Vram Destination),
    el número de bytes a copiar (Number of Bytes),
    la posición de memoria donde queremos que se ejecute la rutina.

    Líneas 7..9:

    Genera el código fuente del cargador de la rutina, para ser llamado con GOSUB.

  22. Konamito dice:

    Muchas gracias YMN por tu ayuda. Voy a añadir tu comentario al texto de la entrada.

    Saludos.

  1. 21/06/2011

    […] MSX-BASIC 2011 – Rules […]

  2. 25/10/2011

    […] Hoy he recibido grata noticia de que La Asociación de Amigos del MSX (AAMSX) patrocinará nuestro Concurso MSX-BASIC 2011 haciendo entrega de la última producción de Imanok, Heroes Arena, al juego que quede clasificado […]

  3. 27/10/2011

    […] MSX-BASIC 2011 – Rules […]

  4. 01/11/2011

    […] Algunos de ellos de verdad pequeñas joyas como Ogros o S.B. Streets. Una muestra más de que el MSX-BASIC es capaz de dar buenos juegos, ¿os animáis para nuestro Concurso MSX-BASIC 2011? […]

  5. 05/11/2011

    […] regras do concurso podem ser lidas aqui. Os jogos devem ser enviados até dia 31 de […]

  6. 20/12/2011

    […] Reglas […]

  7. 20/12/2011

    […] MSX-BASIC 2011 – Rules […]

  8. 08/01/2012

    […] MSX-BASIC 2011 – Rules RSS feed for comments on this post | TrackBack URL | Leave a comment […]

  9. 10/04/2012

    […] MSX-BASIC 2011 – Rules RSS feed for comments on this post | TrackBack URL | Leave a comment […]

  10. 29/01/2013

    […] MSX-BASIC 2011 – Rules […]

  11. 29/01/2013

    […] MSX-BASIC 2011 – Rules […]

  12. 29/01/2013

    […] MSX-BASIC 2011 – Rules […]

  13. 29/01/2013

    […] MSX-BASIC 2011 – Rules […]

  14. 29/01/2013

    […] MSX-BASIC 2011 – Rules […]

  15. 29/04/2013

    […] MSX-BASIC 2011 – Rules […]

  16. 15/03/2015

    […] tenemos la segunda entrada a concurso, a pocos días de terminar al plazo de entrega (recordad, 31 de diciembre). El nombre del juego es […]

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: