40/80 column cartridge

Modding and Technical Issues

Moderator: Moderators

carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

Actually the line editor will refuse you to enter a line which is more than 88 characters (exact four screen lines). Here are some (but not all) addresses the cartridge may "hijack" while running in 40 or 80 column mode:

Code: Select all

LXSP   $00C9-00CA (201-202) 
       Cursor X-Y (line-column) position at start of input

PNT    $00D1-00D2 (209-210) 
       Pointer: Current screen line address

PNTR   $00D3      (211) 
       Cursor column on current line, including wrap-round lines, if any

LNMX   $00D5      (213) 
       Current logical line length: 21, 43, 65 or 87 (VIC)

TBLX   $00D6      (214) 
       Current screen line number of cursor

LDTB1  $00D9-00F2 (217-242) 
       Sceen line link table/Editor temporaries

USER   $00F3-00F4 (243-244) 
       Pointer: Current colour RAM location

HIBASE $0288      (648) 
       High byte of screen memory address

IMAIN  $0302-0303 (770-771) 
       Vector: Indirect entry to BASIC input line and decode

IGONE  $0308-0309 (776-777) 
       Vector: Indirect entry to BASIC character dispatch routine

IBSOUT $0326-0327 (806-807) 
       Vector: Indirect entry to kernel CHROUT routine
Based on what you've mentioned, I would say that at least LNMX, LDTB1, HIBASE and IBSOUT are different from normal. If the IBSOUT routine doesn't bother to update LNMX and LDTB1 when a wrap-around occurs, it is rather obvious if Basic gives you ?SYNTAX ERROR when trying to store the line which you thought was kept together but which wasn't.

The screen link table (26 bytes? in LDTB1) is rather funny to play with. Right now I can't recall exactly how it works, but messing up some of the pointers there can yield interesting results when scrolling the cursor. Don't have an important program loaded though. :D
Anders Carlsson

Image Image Image Image Image
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Post by Boray »

Just wondering... Was this cartridge made by Commodore, or by someone else?

/Anders
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

From what I gather, the company was "Data 20". In the Cartlist, both a Display Manager and a Video Pak are listed as 40/80 column devices. The one Chris bought was the Display Manager, but I don't know if there was two different or just popular names on the same unit.
Anders Carlsson

Image Image Image Image Image
vic user
VicGyver
Posts: 1401
Joined: Thu Mar 25, 2004 9:40 am

Post by vic user »

If the IBSOUT routine doesn't bother to update LNMX and LDTB1 when a wrap-around occurs, it is rather obvious if Basic gives you ?SYNTAX ERROR when trying to store the line which you thought was kept together but which wasn't.
You hit that one on the head.

It is also funny to write a line in 80 column mode, and if say the 41st entry is a number, and then you switch back to 40 column mode, and then run the program, eveyrhting is fine, but if you list first, it will see the 41st entry as a new line number.

Chris
vic user
VicGyver
Posts: 1401
Joined: Thu Mar 25, 2004 9:40 am

Post by vic user »

well, i finally hooked up a vic with the 40 column cart. to a monitor, and at the same time, hooked the video out from the vic to a tv, so i could see what would happen.

i turned on the vic, and the monitor displayed in 40 columns and the tv had the proper border and screen colours but no text at all.

no matter what i did (besides using pokes)., i could not get text to appear on the tv, yet the text appeared on the monitor.

i then poked chartacters to the screen and played around poking different colours, and the tv then displayed the proper characters and colours, but no change to what was dsiplayed on the monitor.

i could also change the screen colour via pokes.

it's too bad, but i think that the super expander cart. and the display manager cart. would conflict, because i would love to know if i could display graphics on one screen and at the same time have text on the other screen, and be able to manipulate them without affecting the other screen.

so, i am now thinking i have an interesting split screen ability with this setup.

i would like to try it with the light pen too, as i can have one screen display symbols or whatever for locating with the light pen, and then use the other screen to display the results of whatever actions.

chris
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

You wrote that there was a SYS to turn it off, is there a SYS to turn it on too, so you could use PRINT to the regular screen from within your programs?

Super Expander would surely conflict as it seems to locate partially in the same place as this cart. However, you could get another hires drawing kit which will not be as powerful as the Expander but operate in another part of the memory.

I'm thinking something like moving Basic to $2000, using the low 1K for video memory and maybe hires routines and have the 40/80 cartridge occupy all the high parts of memory. To make the software more compatible for us others, the 40/80 output could be selectable to appear on screen or printer. :lol:
Anders Carlsson

Image Image Image Image Image
vic user
VicGyver
Posts: 1401
Joined: Thu Mar 25, 2004 9:40 am

Post by vic user »

thanks for reminding me Anders, about the SYS commands, as i forgot about them.

yep, i can switch from one display to the other, with the proper command.

i wrote a quick program that lets me switch back and forth and write to the screens.

weird going back and forth from colour and big letters, to black and white and small letters, so i would like to make the vic display for graphics, and leave the 40 coulumn to do the text.

i will look for alternative drawing kits then, as i would like to play around with the two displays, and see what i can do.

chris
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

I have a rather short one which plots points and draws lines on a 128x128 bitmap. It may be possible to extend to use a bigger display and still have room for a 256 byte video matrix at $1F00 (7936). Which aspect ratio would you prefer of these?

* 168x176 / 21x22 (POKE 36866,21+128:POKE 36867,22*2)
* 160x192 / 20x24 (POKE 36866,20+128:POKE 36867,24*2)
* 144x208 / 18x26 (POKE 36866,18+128:POKE 36867,26*2)
* 136x224 / 17x28 (POKE 36866,17+128:POKE 36867,28*2)

I believe the middle two may be best, although the last one gives a certain upright arcade feel.
Anders Carlsson

Image Image Image Image Image
vic user
VicGyver
Posts: 1401
Joined: Thu Mar 25, 2004 9:40 am

Post by vic user »

I have only played around with the display settings you supplied, on an emulator, so i am unsure if the same effect on the real vic.

i see your point though about the last display, as it is long and narrow.

the 20x24 one is good too i think.

chris
vic user
VicGyver
Posts: 1401
Joined: Thu Mar 25, 2004 9:40 am

Post by vic user »

one thing that i have been enjoying is using two screens at once, and i am trying to incorporate text on one screen and hires graphics on the other.

this has been really handy when using custom characters as well.

no worries about remapping standard characters and all that, as i just look at my code on one screen (driven by the 40 column cart. and is unaffected by moving the pointer for where charcaters are stored) and watch the effects on the other screen.

mind you, some interesting quirks can be seen on the screen receiving signals directly from the vic, once you start adding memory and start poking around.

and for anyone who has this cart. try using it in combination with the porg. aid cart. and hit F3 (IIRC).

you can get the 40 column screen to jump into a 30 x 9 screen and other crazy things!

chris
User avatar
ral-clan
plays wooden flutes
Posts: 3702
Joined: Thu Jan 26, 2006 2:01 pm
Location: Canada

Post by ral-clan »

Hi, I too have a DATA-20 40/80 column cart (I'm located in Cornwall, Ontario - near you!). I think I was discussing this with you in another thread.

Anyway, when I turned it on it totally brought me back to those 40 column PET computers I used to play around with in elementary school! (I had a PET a few years ago but had to sell it because of space considerations - and general lack of use ).

I just wanted to say that with my DATA-20 board, pressing the F5 and F7 keys toggles between 40 and 80 column mode automatically.

Also, pressing SHIFT in combination with the F1 or F7 key toggles between upper and lower case.

Would love to get a scan of your 'manual' as otherwise I don't know how to use this board.

I was also intrigued to read that your manual states you needed to type a SYS command to use the 16K RAM expansion. I tried plugging my board into a multi-slot expander the yesterday with a 16K expander and it the RAM showed up. But I didn't try playing around or loading anything.
User avatar
ral-clan
plays wooden flutes
Posts: 3702
Joined: Thu Jan 26, 2006 2:01 pm
Location: Canada

Post by ral-clan »

Hi have all the necessary X-1541 and Datasette to PC cables necessary if you find you are having trouble transferring that ROM chip.

Or I could do it from my DATA-20 40/80 column board, although I'm not sure it is the same board you have.

When I do a RUNSTOP/RESTORE the board displays the message:

Data-20 Corporation 1.1

or something similar. I could get the number of the ROM chip (it is actually an EPROM, which makes me a little nervous about bit-rot).
vic user
VicGyver
Posts: 1401
Joined: Thu Mar 25, 2004 9:40 am

Post by vic user »

hi;

yep i have the same type of card as you, from data20 and with their opening screen.

if you want to do a ROM dump for anders, that would be sweet.

i will supply you with a scan of the manual, but i do have to warn you that my copy is really hard to read.

i think i was starting to trancribe it to a text file for leif (schema) who also has a 40/80 card, but he managed to get a better copy of the manual i think

chris
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

Hm, so you have a manual. What were we going to do with the ROM dump, other than archive it in case someone can build a compatible board? We were trying to find which pointers or calls it patches, but that was only to find which area of memory it was worth dumping.
Anders Carlsson

Image Image Image Image Image
User avatar
ral-clan
plays wooden flutes
Posts: 3702
Joined: Thu Jan 26, 2006 2:01 pm
Location: Canada

Post by ral-clan »

vic user wrote:hi;

yep i have the same type of card as you, from data20 and with their opening screen.

chris
Thanks for offering a scan of the manual. That would be very helpful! I suppose you could post a link here, or e-mail it to me privately at the e-mail address I supplied to you in the PM. Looking forward to it!
Post Reply