• Please review our updated Terms and Rules here

TI-74/95: Centronics Interface (from insurance companies)

Establishing a virtual device in RAM is possible, but it's much easier to assign external memory

a Device Code & access it via CALL IO( ).

Just sayin'...
 
What do you mean? Mem above >4000? But that doesn't help, if PRTPAR-comand is located in a cartridge! In that case no external RAM is available....
 
Actually, if all you want to do is send [n>80 chars] lines to a Printer, you don't need discrete memory;

for your HexBus controller pick a uC with enough internal RAM to buffer your Print job - Some AVRs

have 16K internal RAM... If that's not enough the next step might be something like a 23LCV1024 SPI

Serial SRAM - 128K (presumably enough?) which would use an additional 4 pins on the controller for the

SPI port - And of course however many pins your Printer wants to talk to... Unless your Printer's protocol

is a secret, it's just not that hard... :cool:

/br
 
I should explain:
First: This should work only with this insurance centronics-interface. To send only more then 80chars is not the real challenge - every printer has it's own buffer, which can be used for that purpose.
Second: The idea is to mount a "device" to the system (which doesn't need response from a real device) and is useable for OPEN #xy,....., so that build-in PRINT-statement can print to it (PRINT #xy, .....). I wan't to do this without any extra hardware (exept Centronics-interface) - only with TI's build-in possibilities. And this "device" can point to it's own buffer and can be send to interface with adapted PRTPAR-routine (in non-standard-mode).
TI shows that it can be done (CI-7-interface!) but it's hardcoded in ROM.
I know, that's only interessting fo those, who own a centronics-interface, but this is more to learn and understand how operating system works.....
 
Right - Got it. Then your options are:

0) Find the ROM call that enables this - If it exists. Which seems possible, or...

b) Write an assembler routine or subroutine that, when invoked, emulates Option 0.

IMHO Option b is likely to happen sooner - But I'm often wrong... :unsure:

/br
 
There *must* be a table in RAM, where all actual open devices are registered. How should BASIC else know, what device is existing and valid?
This table should point to the appropriate handler for this device (~ PAB)
This handler should be similar to (for example) a mountlist on an Amiga or other system. A "mountlist" can be compared to the PAB (includes nearly the same infos).
In 70C46 system RAM (>0000->00FF) are various registers for IO-operations defined (e.g. I/O-command, attributes to I/O-command and status, 2 byte Address for I/O-buffer and pointer and ... I/O-device!) I/O-buffer itself seems then located in system-RAM (>2000 ....).
The exercise is now to find out, what values are in this registers, if a real device is mounted (RBUG) an what this effects exactly.....
 
Last edited:
Are we talking about the VITA NUOVA rom?
No, Jack means the TI-74 ROM. "Mounting-mechanism" of a real device is located in system-ROM.

BTW: Have you tested the print-out of your VITA NUOVA-ROMs? Is the print-out seen simultaniously in LCD during printing to printer?
Is CATALOG(1) or RUN "HEADER" command integrated in this cartridges? If, what do they show ?
 
Last edited:
That, and some france companies are definitly known for useing this "Centronics-Interface".
I've also heard from German, Switzerland and English(GB) companies, but not seen til yet....
 
Back
Top