Is there a cartirdge port , user port, cassette port on the commander x-16?

Chat about anything CX16 related that doesn't fit elsewhere
Anshul2
Posts: 3
Joined: Thu Sep 10, 2020 5:10 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by Anshul2 »


Is there a cartirdge port , user port, cassette port on the commander x-16?

StinkerB06
Posts: 74
Joined: Tue Jun 30, 2020 12:32 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by StinkerB06 »


The X16 will have a user port. However, cassettes won't be supported by the base design (at least for now). The system will read from SD cards (provided by the VERA's SPI controller) and floppy disks (using the Commodore IEC serial interface).

There aren't any cartridge slots, however, there will be 4 general-purpose expansion slots in favor of using expansion carts.

Fnord42
Posts: 74
Joined: Fri Aug 14, 2020 8:56 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by Fnord42 »


So, the expansion ports are seperate from the user port?

Can an expansion card override ROM functions and/or make the CPU run code on power on? (In other words: can an expansion card provide its own drivers, without the need of an extra disk?)

Jeff Pare
Posts: 32
Joined: Fri May 08, 2020 3:31 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by Jeff Pare »


@Anshul2 Go check out the Features and Specifications in the FAQ - no cartridge port, but some info about the slots, user port and other I/O.

TomXP411
Posts: 1781
Joined: Tue May 19, 2020 8:49 pm

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by TomXP411 »



11 hours ago, Fnord42 said:




So, the expansion ports are seperate from the user port?



Can an expansion card override ROM functions and/or make the CPU run code on power on? (In other words: can an expansion card provide its own drivers, without the need of an extra disk?)



No, the RAM and ROM cannot be overridden by the expansion slots. The expansion slots get 32 bytes of dedicated address space, so that's not enough for a ROM. Instead, driver software should be loaded from SD in the autorun script. 

The "cartridge" slot is the SD card slot. User can swap out SD cards and reboot, and an SD card will have some sort of autorun mechanism. 

The User port is basically 14 GPIO lines, along with some interrupt driven control signals, which can be used for a printer, modem, or which can be arbitrary controlled for other devices.

 

StinkerB06
Posts: 74
Joined: Tue Jun 30, 2020 12:32 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by StinkerB06 »



4 hours ago, TomXP411 said:




The User port is basically 14 GPIO lines, along with some interrupt driven control signals, which can be used for a printer, modem, or which can be arbitrary controlled for other devices.



I thought there were 16 GPIO lines driven by one of the VIA's?

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by BruceMcF »



4 hours ago, StinkerB06 said:




I thought there were 16 GPIO lines driven by one of the VIA's?



Port B has pb0-pb5 specified, so I guess one can presume the system uses pb6 and pb7 of that VIA. If they are inputs, then writing %00xxxxxx into Port B output GPIO wouldn't interfere with their system uses - though unless they document them as always input, best to preserve their setting in code setting the port b data  direction register.

 That's 5 more gpio than the C64, which has PortB and pa2 of one CIA. Sure, it only has on serial shift register rather than two, but it has the port with both read and write handshaking and 6 gpio in addition, so I think that counts as an upgraded.

No inside info, but my guess is it shows up in the emulator when they have the magic banking via $0000/$0001, because that's what 12 of those gpio are used for in the prior build. No guarantee is shows up in the same revision, but it certainly cannot show up earlier.

For instance, four tristate 8bit flip flops, latch enable tied to pb4, each one with output enable tied to pb0 through pb3, and each one tied the correct way to a db9, and you have a four joystick input port. IIRC, with a different layout, you could have two Sega 6button Arcade controllers (each one needing three pb gpio lines).

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by BruceMcF »



8 hours ago, TomXP411 said:




No, the RAM and ROM cannot be overridden by the expansion slots. The expansion slots get 32 bytes of dedicated address space, so that's not enough for a ROM. Instead, driver software should be loaded from SD in the autorun script. 



The "cartridge" slot is the SD card slot. User can swap out SD cards and reboot, and an SD card will have some sort of autorun mechanism. 



The User port is basically 14 GPIO lines, along with some interrupt driven control signals, which can be used for a printer, modem, or which can be arbitrary controlled for other devices.



 



The expansion port has all 16 address lines, the ready line and the line to tristate the 65c02 data and address ports, so technically it COULD, but it's not like the C64, automatically detected at power up and executed by the system start up routine ... detecting the system start up, and injecting code into the CX16 RAM to be executed would be entirely on the expansion card. So it couldn't be a passive ROM, but would have to be something like an AVR8 acting as a bootloader.

Fnord42
Posts: 74
Joined: Fri Aug 14, 2020 8:56 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by Fnord42 »


That doesn't sound too bad - so the CPU could for example instruct an expansion card to write data directly to a specified memory area without having to squeeze everything through the 32 bytes of dedicated ram.

Missing autostart capabilities are probably not much of an issue, if that can be done via sd card. I hope it will be possible to run multiple autostart programs in a row, so I can load the drivers for my expansion cards and still autostart my boot menu system or favorite game or whatever.

Maybe an Expansion card can even detect a reboot via the characteristic memory access patterns of the bootup process and act upon that. Not sure if that is a feasible approach, but It seems not too far off.

(I once built a Kickstart switch for the Amiga 500 that was controlled entirely via "magic" memory access patterns, so that I could switch the ROM without needing a hardware switch. (I didn't want to damage the case.))

On the other hand, an autostart program could just tell the card when a reboot has happened.

Anshul2
Posts: 3
Joined: Thu Sep 10, 2020 5:10 am

Is there a cartirdge port , user port, cassette port on the commander x-16?

Post by Anshul2 »


Hello All,

I wanted to ask : is assembly language and monitor covered in the x16 manual?

Post Reply