Jump to content
IGNORED

XEP80


hloberg

Recommended Posts

15 minutes ago, Mathy said:

Hello hloberg

 

What they did at Atari to get to the product we now know as the XEP80 can be compared to putting a V10 engine from a Dodge Viper in an AMC Pacer, pulling the spark plugs out of 7 of the 10 cilinders and removing one of the front wheels.  It'll run, but not to the full potential of the engine.

 

Sincerely

 

Mathy

 

 

I had a car like that once. when I was a kid I had a chevy Barretta GT. It was made for a turbo charged 4 but chevy decided they would shoe-horn a V-6 in it and also throw in some of the less desirable suspension parts from the Corvette. the front end was so over-weighted I went through a set of brakes every year and the engine compartment so cramped you had to unlatch the engine from the mounts then rotate it to change the firewall side spark plugs. As for the suspension, it only would take 1 type of tire, Goodyear specially made for the Corvette at $200+/tire (1980s prices) that only lasted about 20000 miles. So I guess that explains my fascination with the XEP80, I'm a glutton for punishment. ? 

  • Haha 5
Link to comment
Share on other sites

41 minutes ago, Mathy said:

Hello Allan

 

I'd much prefer something that the XL/XE can use too.  In hardware, not software 80 column emulation like the ACE80(XL).

 

Sincerely

 

Mathy

 

 

Me as well since I don't have a working 800 but I know 800 owners would like to have an 80-column card that they could just plug in and was affordable (and findable! )

  • Like 1
Link to comment
Share on other sites

37 minutes ago, Mathy said:

Hello hloberg

 

What they did at Atari to get to the product we now know as the XEP80 can be compared to putting a V10 engine from a Dodge Viper in an AMC Pacer, pulling the spark plugs out of 7 of the 10 cilinders and removing one of the front wheels.  It'll run, but not to the full potential of the engine.

 

Sincerely

 

Mathy

 

 

I would love to know the whole story behind the creation of XEP80.

  • Like 1
Link to comment
Share on other sites

17 hours ago, Allan said:

I would love to know the whole story behind the creation of XEP80

It's simple,  the public wanted 80-column apps.   Apple had a solution,  Commodore had a solution.   So Atari needed a solution,  but in Tramiel style, it had to be done as cheap as possible.

 

I saw it demonstrated at an Atari show...    if you look up the word 'kludge' in the encyclopedia, I'm pretty sure there would be a picture of the XEP-80 there.

  • Like 5
  • Haha 1
Link to comment
Share on other sites

5 hours ago, zzip said:

It's simple,  the public wanted 80-column apps.   Apple had a solution,  Commodore had a solution.   So Atari needed a solution,  but in Tramiel style, it had to be done as cheap as possible.

 

I saw it demonstrated at an Atari show...    if you look up the word 'kludge' in the encyclopedia, I'm pretty sure there would be a picture of the XEP-80 there.

No I mean an interview with the person/people who created it.

Link to comment
Share on other sites

28 minutes ago, Allan said:

No I mean an interview with the person/people who created it.

Boss to engineer: Management has finally decided to authorize an Atari 80 column adapter for the 8-bit line.

engineer: What! Really! that's fantastic! Finally.

Boss: And it's got to work with ALL the 8bit computers so no using the expansion bus. and it has to be cheap. and it can't involve opening up the case. and it also has to have a printer port somewhere involved.

engineer: ????? can I shot myself now or do you want me to wait till after lunch?

 

 

  • Like 2
  • Haha 1
Link to comment
Share on other sites

On 10/25/2020 at 1:24 PM, Spancho said:

Has anybody ever disassembled the XEP80 firmware?

Yes, I did it a while ago. There are quite a lot of undocumented commands that allow access to internal memory and registers. Nothing earth-shattering, but it is possible to reprogram the XEP80 for a higher baud rate and slightly more standard video timing.

 

  • Like 3
  • Thanks 2
Link to comment
Share on other sites

While the XEP80 is not even in the same league as the VBXE, it could be a decent solution, and used the joystick ports so that it could work with all Atari models. If only the screen display wasn't so overscanned (in both directions).  It really isn't terribly slow, either, but I'm sure opinions vary on that one.  I've only had one Sony RGB monitor that could accommodate the overscan.  Of course, that monitor died a long time ago, so now I have 40-columns.  But when it was working, I used AtariWriter 80 quite a bit -- a pretty decent WP. 

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...

does anyone know what the output through the joystick port from the XEP80 was?

I was looking at the ESP32 which can be rigged to do a VGA output and can do 80 column (Ardino can only do max 64). wondering if the ESP32 could interpret the output then send it to the screen?

Link to comment
Share on other sites

3 hours ago, hloberg said:

does anyone know what the output through the joystick port from the XEP80 was?

I was looking at the ESP32 which can be rigged to do a VGA output and can do 80 column (Ardino can only do max 64). wondering if the ESP32 could interpret the output then send it to the screen?

The XEP80 joystick port protocol is extensively documented in the XEP80.DOC file on the official driver disk. It is effectively the E: device piped through a serial port, so the device has to maintain the framebuffer and implement the screen editor. It's a plain asynchronous serial protocol, with a couple of exceptions: it uses 9 data bits instead of 8 since the 9th bit is used to signal a command, and in burst mode the device needs to be able to just hold down the serial line instead of sending data. This may complicate UART programming.

 

  • Like 1
Link to comment
Share on other sites

11 hours ago, phaeron said:

The XEP80 joystick port protocol is extensively documented in the XEP80.DOC file on the official driver disk. It is effectively the E: device piped through a serial port, so the device has to maintain the framebuffer and implement the screen editor. It's a plain asynchronous serial protocol, with a couple of exceptions: it uses 9 data bits instead of 8 since the 9th bit is used to signal a command, and in burst mode the device needs to be able to just hold down the serial line instead of sending data. This may complicate UART programming.

 

got a copy of that XEP80.DOC?

and this project might be doable.

Link to comment
Share on other sites

On 10/23/2020 at 8:40 PM, hloberg said:

has anyone ever created a homebrew XEP80? 

Years ago I paid Steinman at Dataque to make an 80 column card, he called it the MV80 and it could connect to a VGA monitor as I recall. It works, it's a PBI device, the board is here somewhere in a box. IIRC it was basically two chips, a 6545 and I think the other chip was the character generator. As always the problem was no way to share the PBI with other devices, and I think the thing was going to cost about $140USD, which we figured nobody would pay at the time.

  • Like 3
Link to comment
Share on other sites

58 minutes ago, mytek said:

Just an aside... do you know what happened to Chuck Steinman? Is he still alive and kicking?

 

No, I don't. I made an effort to try and find him last year, but other than finding out that he was arrested in the late 90's for a bar fight, there's no trace of him. I never came up with a number for him and I wasn't about to drive to Ohio to see if any of the addresses I came up with were valid. Neither Puff nor Hohman have heard from him since those days either. It's possible he's died, I had the impression he was maybe 15 or twenty years older than I am, but I never actually met the guy, so I don't know for sure.

Edited by Alfred
Link to comment
Share on other sites

23 minutes ago, Alfred said:

No, I don't. I made an effort to try and find him last year, but other than finding out that he was arrested in the late 90's for a bar fight, there's no trace of him. I never came up with a number for him and I wasn't about to drive to Ohio to see if any of the addresses I came up with were valid. Neither Puff nor Hohman have heard from him since those days either. It's possible he's died, I had the impression he was maybe 15 or twenty years older than I am, but I never actually met the guy, so I don't know for sure.

Thanks for responding to my question about his where abouts. I haven't heard from him in 28 years prior to me dropping out of the Atari scene for 23 years thereafter.

 

He was the one that I sold the rights to the original 1990 TransKey. Seemed like a very intelligent guy, full of ideas and ambition related to the Atari 8-bit at the time.

 

Never knew he got arrested.

 

Link to comment
Share on other sites

On 11/14/2020 at 8:48 PM, Mathy said:

Hello Alfred

 

Can you tell (or even show) us more about this MV80?

 

Sincerely

 

Mathy

 

 

I've tried looking for the board twice now, but I've got so much stuff packed in boxes that are hard to get to, I haven't located it.

 

Anyway, it's just a rectangular board about 4x9 inches, with a 50 pin edge connector to plug into the pbi and vga connector on the other edge. I don't recall what it used for power, must have had a wall wart or something. I never had the pcb layout for it or even a schematic, Chuck just sent me the finished unit. I vaguely remember plugging it into a monitor and trying it out and being kind of impressed that it worked. Then I tossed it into a box and forgot all about it. Basically it was the two chips, the 6545 and the other one whose number escapes me. I looked it up at the time and it was a character generator, I think meant to be paired with the 6545. Few TTL for the interface and that was about it, nothing fancy. I think the rom had a simple E: handler in it, I don't recall having to do anything, it was plug and play.

 

Found my 16 port Boca board, now that I haven't used in years, haha.

 

 

 

Edited by Alfred
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

OK I have been doing some research and tell me why this won't (or might) work. run the XEP80 drivers on the atari, hook the joystick port to a PC with a cross over cable com-port and then set right protocol on PC. would PC be able to display the characters? looks like yes. 

Link to comment
Share on other sites

  • 5 weeks later...

Plain text conversion of the .DOC (txt) file...

 

;------------------------------------
;
; MV80 Software Specifications
; Copyright (c)1990,1991
; DataQue Software
;
;------------------------------------
;
; MV80 PBI Registers:
;
; R6545 Video Controller Register
; Select.  This controls which
; internal register you will be
; accessing with RDAT.
;
; Bits are assigned as follows:
;
; Bit  Function
; ---  -----------------------
;  0   Register Select Bit-0
;  1   Register Select Bit-1
;  2   Register Select Bit-2
;  3   Register Select Bit-3
;  4   Register Select Bit-4
;  5   unused, always zero
;  6   unused, always zero
;  7   unused, always zero
;
RSEL    = $D100
;
;------------------------------------
;
; The R6545 Status register is
; located at the same address as
; RSEL, and is read only.  There
; are only three bits in RSTA which
; are meaningful.
;
; Bit  Function
; ---  -----------------------------
;  5   Vertical Retrace if SET.
;  6   Light Pen Strobed (unused)
;  7   Update register flag (unused)
;
RSTA    = $D100
;
;------------------------------------
;
; R6545 Video Controller Data
; Register Access.  This is where
; you read, or write data from/to
; the R6545 chip.
;
; Depending on the value last
; written to RSEL, you will be
; accessing one of the R6545
; embedded control registers.
;
; These registers are as follow:
;
; RSEL  RDAT Function
; ----  ---------------------------
;   0   Horizontal total width (-1)
;        bits 0-7, range 0-255
;   1   Horizontal chars displayed
;        bits 0-7, range 0-255
;   2   Horizontal sync position
;        bits 0-7, range 0-255
;   3   Horz/Vert sync pulse widths
;        horz value bits 0-3
;        vert value bits 4-7
;   4   Vertical total rows (-1)
;        bits 0-6, range 0-127
;   5   Vertical line adjust
;        bits 0-4, 0-31 scan lines
;   6   Vertical displayed rows
;        bits 0-6, range 0-127
;   7   Vertical sync position
;        bits 0-6, range 0-127
;   8   Mode control register
;        see R6545 data sheet
;   9   Scan lines per char (-1)
;        bits 0-4, range 0-15
;  10   Cursor start line
;        bits 0-4, range 0-15
;        bits 5-6 flash mode
;  11   Cursor end line
;        bits 0-4, range 0-15
;  12   Display start address msb
;        bits 0-5, range 0-63
;  13   Display start address lsb
;        bits 0-7, range 0-255
; *14   Cursor address msb
;        bits 0-5, range 0-63
; *15   Cursor address lsb
;        bits 0-7, range 0-255
; *16   Light pen address msb
;        bits 0-5, range 0-63
; *17   Light pen address lsb
;        bits 0-7, range 0-255
; *18   Update address msb
;        bits 0-5, range 0-63
; *19   Update address lsb
;        bits 0-7, range 0-255
;  20-30 unused
; *31   Update strobe register
;
; * = unused by MV80
;
RDAT    = $D101
;
;------------------------------------
;
; The MV80 ROM will only be enabled,
; and the OS FP ROM disabled by the
; MV80, IF bit-7 of RPBI has been set.
; No testing is done to see that
; bit-7 is exclusevely set, so any
; other PBI handlers present must not
; set this bit.
;
; All other resources of the MV80
; are accessable whether bit-7 of
; RPBI has been set or not.
;
RPBI    = $D1FF
;
;------------------------------------
;
; This is the MV80 control register.
; It is WRITE only, so you must keep
; a shadow copy somewhere.  Since
; the Atari OS generates an inverse
; character as a cursor, the R6545
; cursor should be disabled. This
; would allow you to store the RCTL
; value into R15 of the R6545, thus
; not using any outside RAM.
;
; Bits are assigned as follows:
;
; Bit  Function
; ---  ----------------------------
;  0   Program ROM bank select lsb
;  1   Program ROM bank select msb
;  2   Char Set ROM bank select lsb
;  3   Char Set ROM bank select msb
;  4   Future
;  5   Display RAM address select-0
;  6   Display RAM address select-1
;  7   Display RAM address select-2
;
; The MV80 can have up to 8K of
; executable ROM on the board.  This
; ROM appears in the floating-point
; (mathpack) window at $D800-$DFFF.
; This window is 2k byte in size, so
; bits 0 and 1 of RCTL select which
; 2k byte block appears in the window.
;
; The MV80 ROM will only be enabled,
; and the OS FP ROM disabled by the
; MV80, IF bit-7 of RPBI has been set.
; No testing is done to see that
; bit-7 is exclusevely set, so any
; other PBI handlers present must not
; set this bit.
;
; The program ROM offset selected
; by the ROM bits, are as follow:
;
; bits
;  10    Character set
; ----   ------------------------
;  00    ROM offset $0000-$07FF
;  01    ROM offset $0800-$0FFF
;  10    ROM offset $1000-$17FF
;  11    ROM offset $1800-$1FFF
;
; There are 4 character sets in the
; MV80 system, they are assigned as
; follows:
;
; bits
;  32    Character set
; ----   ------------------------
;  00    Atari 8-bit normal
;  01    IBM/PC normal
;  10    Atari 8-bit modified
;  11    IBM/PC modified
;
; The normal character sets use
; the Atari internal character
; order for their characters.
; The modified use normal ASCII
; character order.  The latter
; will allow direct observation
; of text in memory, without any
; software translation.
;
; The RAM control bits are used
; to position the dual port RAM
; in the 6502 address space.
; There are 8 possible locations
; the RAM block can occupy. They
; are controlled by these bits:
;
; bits
;  765   RAM location in 6502 space
; ----   --------------------------
;  000   RAM disabled
;  001   RAM appears at $7000-$77FF
;  010   RAM appears at $7800-$7FFF
;  011   RAM appears at $9000-$97FF
;  100   RAM appears at $9800-$9FFF
;  101   RAM appears at $B000-$B7FF
;  110   RAM appears at $B800-$BFFF
; *111   RAM appears at $D800-$DFFF
;
; * = RPBI bit-7 must be set
;
; Bit-4 is currently unused, and
; may be used for expanding the
; ROM, RAM, Character set, or
; adding new functions in future
; versions of the MV80.
;
RCTL    = $D108
;
;------------------------------------
;
; R6545 initialization table and
; support software.  On entry,
; Register Y will be 0 for 40 column
; mode, and $10 for 80 column mode.
;
init_6545
        ldx #0
il0     stx rsel
        lda rtab,y
        sta rdat
        iny
        inx
        cpx #$10
        bcc il0
        rts
;
;------------------------------------
;
; Initialization tables for the R6545
;
rtab

i40     .byte 112       ; horz total
        .byte 40        ; horz actual
        .byte 90        ; hsync pos
        .byte 255       ; sync widths
        .byte 28        ; vert total
        .byte 0         ; vert adj
        .byte 24        ; vert actual
        .byte 26        ; vsync pos
        .byte 0         ; video mode
        .byte 7         ; scan/chr-1
        .byte 39        ; crs start
        .byte 8         ; cursor end
        .byte 4         ; base addr
        .byte $3f
        .byte 0         ; cursor addr
        .byte 0

i80     .byte 112       ; horz total
        .byte 80        ; horz actual
        .byte 90        ; hsync pos
        .byte 255       ; sync widths
        .byte 28        ; vert total
        .byte 0         ; vert adj
        .byte 24        ; vert actual
        .byte 26        ; vsync pos
        .byte 0         ; video mode
        .byte 7         ; scan/chr-1
        .byte 39        ; crs start
        .byte 8         ; cursor end
        .byte 0         ; base addr
        .byte 0
        .byte 0         ; cursor addr
        .byte 0

 

Link to comment
Share on other sites

Back in the day, after suffering with an old color tv to the point I was ready to throw the TV and the Atari directly into the ocean, someone took mercy on me and sold me an Amdek 300A, I think I traded him my 256K Atari 800XL, which probably seemed unusual to him.  I wanted a monitor, and had moved on to a 130xe.   So I had a composite amber monitor with no sound.

 

I was one of the few people that could've used a XEP80 and would've loved it, but alas, it came out a bit too late for me, I had moved on to an Atari ST by then.

 

I still strongly want to use 80-columns for the reasons Drac030 mentioned - 80 columns LW, 80-column file explorer, 80-column code editor, and sometimes an 80-column terminal, sure.

 

It's a pity Atari never really solved this for us...the Coco users can just get a Coco3, the commodore folks can get a 128.   In the Atari community right now, the VBXE is the closest thing to a standard, but it requires soldering and that's prohibitive in some ways.    Anyway, I'm keenly interested in any 80-column solution...40 years later, right, lol

 

  • Like 3
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...