Join us on Discord!
You can help CodeWalrus stay online by donating here.

CBS6000 - an 8-bit 6510 computer

Started by Keoni29, December 20, 2014, 05:27:59 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Keoni29

I need raw uncompressed 8 bit mono PCM @8000Hz samplerate. Max filesize is 55k
If you like my work, why not give me an internet?

Dream of Omnimaga

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

This still has the WAV header in it. Could you provide me with a headerless file?
If you like my work, why not give me an internet?

Dream of Omnimaga

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

There is an option to export headerless files in audacity. Save a file as uncompressed and go to options. Then select RAW(header-less)
If you like my work, why not give me an internet?

Dream of Omnimaga

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

#36
Quote from: DJ Omnimaga on December 26, 2014, 09:11:08 AM
What about this?
Thanks! I will test it on hardware in a bit.

I made a debug routine. It's an interrupt service routine that prints human readable info about the CPU state.
Sample output:
A=03,X=08,Y=00,P=34,S=FB,PC=0240
It can be called using a brk instruction or by pulling the IRQ pin low. I want to change this to the NMI because I still want to be able to use interrupts.
I want to make it elaborate on the status flags. It will explain what every flag does like so:
Negative number, BRK, INT disabled, Decimal mode enabled

https://raw.githubusercontent.com/keoni29/cbs6000/master/src/main/debug.asm

Edit: I finally fixed a bug in the debugger that prevented it from outputting characters occasionally. I was simply sending characters too fast.
If you like my work, why not give me an internet?

Dream of Omnimaga

Ooh nifty :D. By the way lda is kinda like ld in Z80, right? I also can't wait to hear how my sound sample sounds like on your hardware device. Do you think longer samples could be done?
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

#38
It can be done, but it would require bankswitching and/or streaming from a storage device such as a flash chip or sd card.

Edit: Just tried a new kind of digital to analog converter: a bunch of resistors tied to the I/O port. The audio quality is about the same and it takes much less cycles compared to the serial DAC method.
If you like my work, why not give me an internet?

Dream of Omnimaga

Aaah ok, I sometimes don't realize how limited memory is XD. Still, good job :)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

I wrote a faster bootloader that uses the serial port of the CIA instead of a software-defined serial port. With the old bootloader it took about a minute to send 55kb to the computer. With the new one this takes less than 5 seconds.
If you like my work, why not give me an internet?

Dream of Omnimaga

Wow that's fast! By the way is it the time it takes to startup the computer as well or does it startup instantly like non-TI calculators?
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

It does not have an operating system, so loading depends on the size of the file you send to it. The bootloader is ready to receive data a few miliseconds after turning it on.
If you like my work, why not give me an internet?

novenary

Wow that's some crazy awesome stuff right there Keoni. o.o
ALL HAIL THE KEONI !

Keoni29

#44
I am now populating the I/O board. The board connects via a system bus connector to the cpu. The first chip I put on there is a UART. This allows for bi-directional serial communication with a terminal/PC.

Edit: I just tested it and the transmitter seems to work fine. I just sent: Hello World :D
Edit2: Both sending and receiving characters works. The input is buffered in a 64 byte long buffer. It stops accepting bytes when the buffer is full.
If you like my work, why not give me an internet?

Powered by EzPortal