With the help of a friend, I was able to port and assemble extended wozmon to the Cactus. A ROM monitor is something I’ve needed for quite awhile, so it’s good to finally have that capability. It includes some serial transfer routines which will cut down on development time.
Now that I have cc65 installed, I should try writing some C for the Cactus.
Here some news about my NES ball-breaker game. I have redesigned the dungeon level. Although NESMaker is a nice tool, it wasn't the best option for my style of game. I decided to go for cc65, a C compiler for the NES. I will have some gameplay to show very soon.
O amigo Fábio da Elicar Auto Elétrica perguntou:
Eu vou comprar uma pinça amperimétrica, mas não recebi ainda meu Hantek 6254Be e meu Raven Scanner 3 não tem ainda o upgrade para Scope. Se eu comprar uma pinça para osciloscópio, com uma saída BNC e um adaptador BNC para pino banana duplo, consigo usar?
Resumindo: Se as pinças geram tensão para ser lida, é possível ver isto em um…
Teste corrente e rotação da bomba combustível com pinça CC65 e Raven Scope no Uno
Teste corrente e rotação da bomba combustível com pinça CC65 e Raven Scope no Uno
Teste de bomba de combustível com osciloscópio, utilizando a pinça amperimétrica CC65 da Hantek e o osciloscópio Raven Scope 3.
Foram considerados os valores de corrente e rotação por comparação com as informações do grande Abel Klering, que fornece treinamentos muito bons para oficinas.Apesar de ter recusado anteriormente a troca da bomba, o cliente ao ver o vídeo do teste compreendeu a…
That first app I created for C64 hasn't been a state of the art tbh. It was a generic C app, written without taking almost anything C64 specific into consideration. Anyway, this is what I have learnt from it, in no particular order.
It’s a bad idea to code for C64 on C64. Lack of copy & paste & save & other stuff.
Furthermore it’s a bad idea to code in Basic. What is supposed to work doesn’t work, and there are weird limitations everywhere. Two letters max for a variable name isn’t that much, tbh.
I have learnt about wonderful CC65 development platform containing a C-crosscompiler, macroassembler, linker and some other useful tools.
Strings are tough to handle correctly on C64 from C :D As it can be seen from the screenshot above (showing Python script running an HTTP proxy on Raspberry Pi and Vice running Web server on C64), the char case is inverted (”aCCEPT-lANGUAGE”)
New line chars are also hard to deal with. For example, \r is one char (#13) but \n is #13 #10 (two chars), which might have also been dependent on a platform where CC65 was running.
Rebuilding gzip with CC65 and running it on C64 was a bad idea because slow :)
Otherwise I have learnt how to interact with RS232 interface. Trying to separate my Web server into modules failed because I had no idea how to link them, but I decided not to bother with it as long as I have made my C64 to do what it hasn’t been meant to do - to serve the web pages!
I didn’t actually own one when I was kid. My first computer was IBM PC-compatible Robotron CM1910 from GDR. In 2017 I realized that my job doesn’t fully inspire me and I need an IT hobby. So I went to ebay and bought a C64 in a nice condition, and today I don’t even remember why haven’t I chosen any other retro dino shit like Amstrad, Apple II or whatever else - most likely because of price.
Then I spent some time buying stuff for it - cables, adapters, monitors etc. Most challenging part was to produce a good picture from the composite video output. When I was done I thought what would be cool to do, and implemented a simple Web server for C64. I quickly drafted something in Basic but realized it’s a dead end. So I have chosen C as a language and CC65 as compiler as a reasonable tradeoff between M6510 (the C64 CPU) assembly (which I didn’t know anyway) and Basic.
The setup was as follows:
Raspberry Pi runs Python script that opens a web socket and listens for requests on HTTP port.
When a request comes, script sends it to C64 via RS232 cable
On C64 the server itself runs, that listens to data on RS232 and bundles byte sequences into strings of HTTP requests
Server processes the request and returns the response.
I had a few static HTML pages with some PNG images that have been served quite well in such setup.
So I was programming C again, for a platform that was new to me, and used Raspberry. I was proud of myself.