Commodore manía
Commodore 64 => Desarrollo => Ensamblador => Mensaje iniciado por: lobogris en Enero 22, 2012, 19:59:47
-
C64 Kickass IDE es un nuevo entorno de programación para c64 desde PC (Windows). Un entorno de desarrollo que he creado a partir del programa Crimson Editor (código fuente liberado) especialmente para poder seguir el curso "Ensamblalo!", que voy a ir desarrollando en mi blog.
Entrada en el blog del primer capitulo del curso:
http://back2theretro.blogspot.com/2012/01/curso-de-ensamblador-para-c64.html (http://back2theretro.blogspot.com/2012/01/curso-de-ensamblador-para-c64.html)
Enlace descarga: http://noname.c64.org/csdb/release/?id=104482 (http://noname.c64.org/csdb/release/?id=104482)
Podéis usar este mismo hilo para contarme vuestras experiencias con el programa de cara a mejorarlo, ampliarlo, corregir bugs... y todas esas cosas.
¡Felices ensamblados!
-
Hola Lobogris,
Me he registrado en el foro para seguirte dando la bara con el IDE. No conocía la existencia de este foro !
Primera cosita, es que lo acado de arrancar, lo uso en un win7 64bits ¿ porque pide permisos de administrador para ser lanzado ? :o
Saludos
-
¡Bienvenido!
-
Por dios... ¡¡Que alguien lo porte a Linux!! :'(
-
Por dios... ¡¡Que alguien lo porte a Linux!! :'(
Espero que te funcione con Wine, porque son todas aplicaciones basadas en Win2 :/
-
Hola Lobogris,
Me he registrado en el foro para seguirte dando la bara con el IDE. No conocía la existencia de este foro !
Primera cosita, es que lo acado de arrancar, lo uso en un win7 64bits ¿ porque pide permisos de administrador para ser lanzado ? :o
Saludos
¡Hola por aquí y bienvenido a este foro, Aeko!
Vaya, yo uso winxp y no me pide permisos... al parecer win7 es más quisquilloso con esas cosas y no lo habré previsto en el script del instalador. Lo revisaré a fondo, a ver si puedo hacer que no requiera permisos en win7 (seguro que es una tonteria facil de arreglar). No tengo win7, por lo que cuando cambie el instalador necesitaré que alguien lo pruebe en win7. Cuando tenga unos cuantos arreglos más, lanzaré una versión 1.1 seguramente....
Por dios... ¡¡Que alguien lo porte a Linux!! :'(
Me temo que eso va a ser muy complicado... por que yo no entiendo ni papa de Linux. ¡A lo mejor un dia me pongo!
Espero que te funcione con Wine, porque son todas aplicaciones basadas en Win2 :/
Asi es, lo único verdaderamente multiplataforma es el propio compilador kickass (en Java)...
una buena solución es Wine (que es de las pocas cosas que si se que existe en linux), como dice josepzin, ¡Espero que funcionen ahi!
-
Holas Lobogris,
Yo puedo probarlo en varios Win7, tanto 32 bits como 64 bits. A la siguiente versión me lo haces saber. Hago incapié en que si el instalador requiere permisos especiales no hay problema, es lo común. El tema esta al lanzar el IDE, que es lo raro y que no deja de ser otra tontería, porque le dices que si y punto, pero no queda elegante.
Otra cosita, que no es para darte trabajo a ti, sino a mi. La última vez que volví al C64 (y esto me va por rachas), me volví como un loco buscando una calculadora en soft que manejara hexadecimal/binaria, que sumara, restara, NOT, AND, COMP2 ... Acabé tan harto de buscarla que me hice una muy básica en C#. Va bien tener una calculadora hexadecimal porque vas viendo como todo está perfectamente ordenado dentro del C64 y entender mejor las cosas. ¿ Alguien conoce de una calculadora hex ? Si no es así, me pongo poco a poco a mejorar la rústica que tengo ya hecha y miramos como incorporarla al IDE. ¿ Que te parece ?
-
@Aeko: prueba esta versión del instalador en tu win7, a ver si ya no te pide los permisos: El único cambio que le he hecho es que instale los archivos sólo para el usuario actual y no para todos como estaba antes. Y bueno, contiene algunas otras mejoras que he ido acumulando estos dias.
http://back2theretro.retroinvaders.com/kickass-IDE/win32-Spanish-v1.1Beta/Instalar-c64-Kickass-IDE-v1.1-beta-win32.zip (http://back2theretro.retroinvaders.com/kickass-IDE/win32-Spanish-v1.1Beta/Instalar-c64-Kickass-IDE-v1.1-beta-win32.zip)
Respecto al programa en si pidiendote permisos de administrador supongo que es por que te lo has bajado de internet y win7 es muy quisquilloso. Yo no comulgo con las tontadas que se les ocurren a los genios de Microsoft con sus geniales nuevas ideas. Asi que aunque no quede elegante, es culpa de tonterias de Microsoft.
-
Esta noche lo pruebo .. aquí en el curro uso XP y sin ganas de cambiar ;)
-
.. Acabé tan harto de buscarla que me hice una muy básica en C#. Va bien tener una calculadora hexadecimal porque vas viendo como todo está perfectamente ordenado dentro del C64 y entender mejor las cosas. ¿ Alguien conoce de una calculadora hex ?
Yo uso esta: Hexit Calculator and Converter > http://www.wfwsoftware.com (http://www.wfwsoftware.com)
Es superliviana y portable (Win2)
-
Otra cosita, que no es para darte trabajo a ti, sino a mi. La última vez que volví al C64 (y esto me va por rachas), me volví como un loco buscando una calculadora en soft que manejara hexadecimal/binaria, que sumara, restara, NOT, AND, COMP2 ... Acabé tan harto de buscarla que me hice una muy básica en C#. Va bien tener una calculadora hexadecimal porque vas viendo como todo está perfectamente ordenado dentro del C64 y entender mejor las cosas. ¿ Alguien conoce de una calculadora hex ? Si no es así, me pongo poco a poco a mejorar la rústica que tengo ya hecha y miramos como incorporarla al IDE. ¿ Que te parece ?
Pues es buena idea. Yo uso la calculadora de windows en modo científico para calculos en hex o binario y me va muy bien... He probado varias calculadoras por soft, y hay algunas que estando bien, no me convencen tanto como la de windows. Claro que en win7 no se cual tendrá... si mejor o peor...
De todas maneras si la tuya demuestra ser más útil, ¡la incluimos en el IDE! La verdad es que es vital tener una buena calculadora hexadecimal.
Pasámela cuando la tengas terminada...
Yo uso esta: Hexit Calculator and Converter > http://www.wfwsoftware.com (http://www.wfwsoftware.com)
Es superliviana y portable (Win2)
probaremos esa tambien a ver...
Esta noche lo pruebo .. aquí en el curro uso XP y sin ganas de cambiar ;)
ok!
-
Esta es la que yo uso: Microsoft Calculator Plus
http://www.microsoft.com/downloads/es-es/details.aspx?familyid=32b0d059-b53a-4dc9-8265-da47f157c091&displaylang=es (http://www.microsoft.com/downloads/es-es/details.aspx?familyid=32b0d059-b53a-4dc9-8265-da47f157c091&displaylang=es)
-
Yo uso esta: Hexit Calculator and Converter > http://www.wfwsoftware.com (http://www.wfwsoftware.com)
Es superliviana y portable (Win2)
La acabo de probar. Me gusta pero encuentro a faltar la posibilidad de pegar en la calculadora un número desde el portapapeles (en la que yo uso puedo). Me gusta que te salga debajo las conversiones en 3 formatos (en la mia, tienes que pulsar un boton para operar en cada modo)
De momento, me quedo con mi Calculator Plus.
-
La calculator plus está bien. Es lo que andaba buscando y lo que quería que hiciese.
No creo que continue entonces con la mía ;D
-
Lo cual me despierta una dudilla, de cara a incluir una calcu en el IDE...
El tema es que no se si seria problematico incluirla en el paquete, siendo de microsoft... por que aunque sea gratis, no se si es freeware...
No se si incluirla o sólo dar el enlace para descargarsela en la documentación. Esto de los derechos con compañias grandes es un poco tocanarices.
-
Mejor no la incluyas :D
-
¿verdad que no es buena idea? En todo caso en el curso hablaré de ella y de su descarga y ya está...
-
Es por la única excusa que se me ocurre hacer una calculadora. Y más ahora que están todos estos un poco cojoneros con el tema de las patentes. No creo que se pueda distribuir sin mas.
Si se desarrolla un programa, ¿ se puede lanzar posteriormente desde un desplegable del IDE ?
También podríamos incluir funciones específicas del C64 en la calculadora, así que bueno, sugerencias son bienvenidas porque no habrá más remedio que ponerse manos a la obra. Pensad en cosas recurrentes de cálculo durante la programación. No querrais meter todo un mapa de memoria en la calculadora porque puedo tardar años en acabarlo ;D
-
¡Adelante! Con que tenga las funcionalidades básicas que tiene el Calculator Plus ya seria suficiente. Estaria bien incluir el apartado que me gusto de la otra, o sea que te ponga debajo la conversión del número en hexa, bin, dec, y octal (aunque el octal no lo uso yo, pero bueno...)
ummmm... ¿funcionalidades propias de c64 para programación en ensamblador? no sé ... de una calculadora solo espero ponerle un numero en hexa (habitualmente una direccion de 16 bits) y sumarle un offset de 16 bits (a veces 8 bits). En todo caso si vas a añadir una función XOR que se llame como la instruccion eor, por ejemplo.
¿a alguien más se le ocurre algo muy commodorero para una calculadora?
Gracias por tu apoyo y por ofrecerte a hacer una calculadora, por supuesto saldrás en los créditos, al igual que ya salen todos los demás programas de utilidad en "licencia.txt" (y en Csdb)
¡El IDE va creciendo! ;)
-
Esta noche lo pruebo .. aquí en el curro uso XP y sin ganas de cambiar ;)
Probado y pasa lo de antes. No sé. No es que sea de gran importancia e incluso se le puede decir al Win7 que deje de molestar con estos temas. Digamos que la prioridad para corregirlo más bien baja.
(http://gabriel.freeunix.net/images/control.jpg)
-
Acabo de instalar todo el tinglado en Linux Mint usando Wine y parece que todo fue como la seda, abre el Crimson y todos los demás editores, no comprobé si compila pero supongo que si :)
-
@Aeko: Prueba a descargarte este .exe del editor, lo pones en la misma carpeta del IDE (C:\C64-Kickass-IDE) y ejecutalo a ver, cuando puedas:
http://dl.dropbox.com/u/17354872/Programas/Kickass%20IDE.exe%201.0%20%28pruebas%20win7%29.zip (http://dl.dropbox.com/u/17354872/Programas/Kickass%20IDE.exe%201.0%20%28pruebas%20win7%29.zip)
-
Acabo de instalar todo el tinglado en Linux Mint usando Wine y parece que todo fue como la seda, abre el Crimson y todos los demás editores, no comprobé si compila pero supongo que si :)
Buena noticia, josepzin, ¡ compatible con Linux Wine !
-
@Aeko: Prueba a descargarte este .exe del editor, lo pones en la misma carpeta del IDE (C:\C64-Kickass-IDE) y ejecutalo a ver, cuando puedas:
http://dl.dropbox.com/u/17354872/Programas/Kickass%20IDE.exe%201.0%20%28pruebas%20win7%29.zip (http://dl.dropbox.com/u/17354872/Programas/Kickass%20IDE.exe%201.0%20%28pruebas%20win7%29.zip)
Esta noche lo pruebo.
Saludos
-
Lobo, probado y este es el resultado:
(http://gabriel.freeunix.net/images/Error_1.jpg)
Y me he puesto a consultar el log del sistema, en el que pone:
"Error al generar el contexto de activación para "C:\C64-Kickass-IDE\Kickass IDE.exe". Error en el archivo de manifiesto o directiva "C:\C64-Kickass-IDE\Kickass IDE.exe" en la línea 2. El valor "lowestAvailable" del atributo "level" del elemento "urn:schemas-microsoft-com:asm.v1^requestedPrivileges" no es válido."
Podría probar a ver si el editor original va bien, que te parece ?
-
le he cambiado de nuevo el lowestAvailable por highestAvailable, a ver si ahora por lo menos funciona aunque pida permisitos o no... prueba a descargarlo del mismo sitio, lo he actualizado.
Prueba el original si quieres, supongo que el original tambien hará lo mismo. ¿tienes el crimson editor a mano original?
-
Holas Lobo,
Pues tenemos conclusiones :)
(1) Con el cambio a highestAvailable funciona, pero como hace 2 días: pide permiso.
(2) He instalado el Crismson editor, última versión 3.72 (May. 2008) y windows7 pide permisos para su ejecución. Ya hemos encontrado el problema y creo que aquí se proponen varias soluciones : http://superuser.com/questions/24631/prevent-elevation-uac-for-an-application-that-doesnt-need-it (http://superuser.com/questions/24631/prevent-elevation-uac-for-an-application-that-doesnt-need-it)
Saludos
-
ok ahora lo soluciono, y lo pruebas en unos minutos...
aqui está la última versión corregida... le he puesto "asInvoker" en lugar de "highest...." en el manifest
http://dl.dropbox.com/u/17354872/Programas/Kickass%20IDE.exe (http://dl.dropbox.com/u/17354872/Programas/Kickass%20IDE.exe)
-
Lobo,
Solucionado !
Tan solo dice que si lo quiero ejecutar, que el publicado es desconocido, con la marquita de que lo pregunte siempre. Le quito la marquita y ya está. No lo vuelve a preguntar. Esto es muy común.
Listo. A seguir avanzando .. ;)
-
¡Genial que ya funcione correctamente en Win7! ¿Asi que solo las empresas pueden crear software de confianza hoy en dia? Bah! xD
-
jeje
Lo que realmente creo yo que ha pasado es que Microsoft ha delegado parte de la seguridad del ordenador al usuario excepto para los creadores registrados que incorporan su certificado. Realmente hay usuarios "muy confiados" y así los de Microsoft se lavan las manos. Yo como confío en ti, no tengo problemas. Seguramente con la calculadora pasará lo mismo, preguntará "No tiene certificado por parte nuestra, realmente quieres ejecutarlo ?".
De paso, Microsoft gana dinero, eso está claro. En Linux no pasa nada de esto menos cuando se les cuela algo en un repositorio o no revisan a conciencia las fuentes. Y esto les ha pasado. Luego usuarios dicen que las distros estables van muy lentas (Debian) o directamente también son de pago (RedHat).
-
que le vamos a hacer, al final todo es una cuestión de confianza ;)
-
Desde pequeño siempre quise aprender a programar en ensamblador para el C64 pero siempre me quede en el Basic...
Ahora veintitantos años después gracias a tu curso y al entrono C64 Kickass IDE estoy empezando a cumplir ese sueño
Muchas Gracias
Sigo el curso de cerca :)
-
Creo que son varios los que darán sus primeros pasos en ensamblador para C64 gracias a Lobogris! a ver si yo puedo sumarme, mas adelante
-
Yo también voy detrás, aunque muy poco a poco. Me falta tiempo....... :(
Hay que agradecerle el esfuerzo que implica hacer todo esto.
-
Hola lobogris, pues justo yaer descubri esté fantástico IDE, lo que pasa que he probado código directo en ASM de Manu, y no me ha funcionado... supongo que habré hecho algo mál o directamente no se puede insertar según que mnemotécnicos... de hecho mi nivel de ASM es nulo, o sea que seguro que estoy haciendo las cosas mal...
Saludos!!! y como digo muchas gracias por el Gran Trabajo!!!
-
Gracias mentalthink!
Verás hay muchas pequeñas variaciones entre varios compiladores de ensamblador. Por lo general se parecen mucho todas, pero tienen detalles que has de conocer, o si no se generan errores de sintaxis por ejemplo.
El IDE usa el compilador kickassembler, si quieres pon el codigo por aqui y te digo como lo puedes poner para que te vaya, y asi ves esas sutilezas que normalmente habrás de cambiar.
Ejemplos de esas cosas que difieren:
Los mnemónicos en kickass son esperados en minúsculas
En lugar de ORG, ó *= se usa .pc=
En el curso iré explicando poco a poco el lenguaje estándar, y luego me iré metiendo en lo que es el kickassembler
Salu2!
-
Hola lobogris, gracias... me había fijado en esto que me comentas...
Pero ya me has resulto una buena duda... lo del puntero (no sé si es un puntero, aqui como en C o C++), con lo de .pc...
Vamos a ver si cargo un sprite de un ejemplo que he visto por "internete".
PS: No te pongo el código, porque ya ni me acuerdo , ando un poco "a diestro y siniestro"... estoy como un niño con juguetes nuevos :P
-
Sobre los sprites y demás... eso es todo un mundo, a ver si encuentras algunos ejemplos en BASIC como para ir pillando el tema!
Por si te sirve, yo estoy haciendo una librería para C que permita gestionar los sprites, modos graficos, tiles, etc. Se llama EightSpriter en honor a la librería de los mojones FourSpriter. Obviamente no está termianda y tiene montones de problemas por solucionar pero quizás te sirva para ver alguna cosa.
http://josezanni.com/mis-proyectos/eightspriter (http://josezanni.com/mis-proyectos/eightspriter)
-
Asi es, "*=" ó ".pc=" (o en los más clásicos ORG) es una forma de poner el contador de programa (Program counter, PC) o sea la dirección exacta de memoria en la que se ensamblará todo lo que haya a partir de ese punto.
En otro post reciente que acabas de escribir, te he puesto un enlace a mi curso sobre sprites.
Ok, suerte !!
-
... estoy como un niño con juguetes nuevos :P
:P jajaja ¡como me gusta sentir esa sensación!
-
Hola gracias... me estáis alegrando el día por momentos... XDXD...
Gracias José, me miro lueo la librearia, aunque yo saliendo de Basic, y de lo sencillito del Arduino, no es que entienda demasiado... :(
Me miro lo que me dices lobogris...
De nuevo muchas gracias!!!.
-
Si tienes mucha prisa ves directo al cap. 3 :
http://back2theretro.blogspot.com.es/2011/03/capitulo-3-todo-sobre-los-sprites-del.html (http://back2theretro.blogspot.com.es/2011/03/capitulo-3-todo-sobre-los-sprites-del.html)
el ejemplo está en BASIC.
;) De nada!!
-
.
-
Lobogris ha publicado una versión en inglés de su IDE, aunque seguramente por aquí vamos a preferir la versión en castellano :D
http://back2theretro.blogspot.com.es/2013/02/c64-kickass-ide-acaba-de-ser-traducido.html (http://back2theretro.blogspot.com.es/2013/02/c64-kickass-ide-acaba-de-ser-traducido.html)
-
Me parece fantástico el C64 Kickass IDE.
Llevo mucho tiempo sin programar en ensamblador para la familia 6502, lo último que hice fue alguna rutinilla en un juego que realicé para el C16 allá por el '89 para poder utilizar una especie de sprites por software. Ahora quería ponerme de nuevo pero en C64 y, para ir refrescando y re-aprendiendo estaba buscando un entorno cruzado que fuese cómodo y creo que he dado con el idóneo.
Lo he cogido con ganas, a ver si realizo un proyecto que aparqué en el C16 por problemas de memoria, pero tengo que comenzar de nuevo, desde casi cero, pues prácticamente no me acuerdo de nada. Aunque según voy leyendo y practicando me va sonando todo y me voy encontrando más cómodo.
Pero me surgen algunas dudas:
* ¿Hay alguna forma de indicar el byte alto y bajo de una etiqueta? En algunos ensambladores se puede hacer con <ETIQUETA y >ETIQUETA.
* ¿Como hago para incluir sprites, graficos o música desde ficheros externos en una determinada posición de memoria?¿Hay algún tipo de .INCLUDE?
* En qué formato guardo mis sprites con el SpritePad para poder incluirlos en mi código.
¡Estoy deseando que salgan más entregas del curso de lobogris!
Gracias
-
Me alegra que te sirva el IDE :) y que te apuntes a programar cosas en ensamblador!
En kickass para referenciar el byte alto y bajo de una etiqueta se hace como dices, con los clásicos signos < y > (alto y bajo respectivamente)
Luego para los "INCLUDE" se usa la directiva:
.import source "fichero.asm"
para incluir trozos de código ensamblador que se compilarán como si estuvieran en el asm que los llama.
y tambien está:
.import binary "fichero.bin"
para que te meta el binario byte por byte en memoria.
Para el sprite pad usa el formato .spr, es realmente una copia binaria de como los espera encontrar el c64 en memoria (63+1 byte x sprite, ese extra byte guarda el color del sprite pero puedes ignorarlo), luego los dos ultimos bytes del archivo .spr guarda los dos colores multicolor comunes, si el/los sprite/s era multi.
Pronto sigo con el curso, siento que vaya más lento que lo que deberia pero es que tengo muchos lios...
-
Muchísimas gracias, lobogris. Probado y perfecto, ya puedo continuar con mi pequeñas pruebas.
La verdad es que tu curso está muy bien, aunque yo vaya más rápido porque ya tenía conocimientos de 6502 y de programación en general, me está ayudando para repasar conceptos básicos que doy por sabidos pero de los que no me acordaba. Es fantástico.
Aunque pueda ir por mi cuenta repasando ensamblador, creo que para las bases, consejos, "truquitos" del C64 me va a ayudar mucho.
Gracias
-
Hola, quisiera probar el kickass ide en español y hacer el curso pero para bajarlo tengo que tener permiso y las imágenes del tutorial no se ven. Si hubiera una forma de que me faciliten estos materiales se los agradeceré.
-
La descarga del IDE tengo una copia, las imagenes lo veo complicado...
¿Has probado con archive.org??
-
Los enlaces para descargar el IDE ya funcionan bien.
-
bueno el ide lo pude descargar, gracias josepzin :)
Sobre las imágenes, lamentablemente la página no está archivada
-
Está muy bueno el curso de lobogris, aunque no se vean las imágenes se puede entender bien. Ojalá que lo continúe.
-
Yo me conformo que Lobogris reaparezca...
-
A LoboGris lo espantaron del foro.
-
Del foro, de lo retro y de internet... es imposible contactar con él.