Jump to content

Photo

Atari's Plato Cartridge question


426 replies to this topic

#326 Bill Lange OFFLINE  

Bill Lange

    Dragonstomper

  • 888 posts
  • Location:Somerset, NJ

Posted Mon Mar 5, 2018 9:01 PM

And lessons on ATARI BASIC, ATARI Assembly Language and Action!



#327 Stephen OFFLINE  

Stephen

    Quadrunner

  • 6,997 posts
  • A8 Gear Head
  • Location:No longer in Crakron, Ohio

Posted Mon Mar 5, 2018 9:22 PM

Nobody interested?

 

-Thom

Interested yes.  Can't get Atari online natively, don't want to wank about with emulation.  Also, most of my free time (non-existent) is pulling transmission from project car.  I'll try to get to this sometime.



#328 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Mon Mar 5, 2018 9:58 PM

@Troff, you start the screen designer from the TUTOR code editor, when you're done with the screen designer, it inserts the relevant tutor commands at the last known insertion point.

Tutor is _VERY_ easy to learn, there is a lesson called 0introtut which gets you started. You can ask the systems guys for lesson space in the request notesfile.

 

-Thom



#329 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Mon Mar 5, 2018 10:00 PM

combine that with the term talk and monitor mode, and you have ways for people to teach other people, without even a need for an instructor, quite readily.

 

-Thom



#330 _The Doctor__ OFFLINE  

_The Doctor__

    River Patroller

  • 3,987 posts
  • Location:10-0-11-00:02

Posted Tue Mar 6, 2018 8:35 AM

Just reminding, I am tschak909 / inted on cyber1, if anyone needs/wants to term talk me.

 

-Thom

?? is there a typo? inted and inetd two different things... which are you?


Edited by _The Doctor__, Tue Mar 6, 2018 8:38 AM.


#331 _The Doctor__ OFFLINE  

_The Doctor__

    River Patroller

  • 3,987 posts
  • Location:10-0-11-00:02

Posted Tue Mar 6, 2018 8:45 AM

Ok, so guys... I have a complete copy of the CYBIS system running in an emulator. This isn't the complete copy running on cyber1, but close...it has all the officially published lessons (the ones that begin with 0)...would anyone be interested in using one that is set up just for us Atari PLATO users? All....4 of us? :P :)

 

I could e.g. customize every part of the system and add a menu router to make things easier to bounce around in...

 

-Thom

I'm pretty sure if a number of Atari interests are put in at the top, you would see more users. PLATO for Newbies... Atari users could learn an quite a bit if you put your' workflow videos in as lessons. Imagine Atari specific programming lessons also. If we could just get the crew to jump on board. The PLATO system could teach nearly all things Atari as hands on lessons rather than just reading a book, getting swamped and giving up. Which is where almost all younger individuals are today... they just swim... then tread water... get over whelmed... and eventually just leave the swimming pool. This could help change that.


Edited by _The Doctor__, Tue Mar 6, 2018 8:47 AM.


#332 _The Doctor__ OFFLINE  

_The Doctor__

    River Patroller

  • 3,987 posts
  • Location:10-0-11-00:02

Posted Tue Mar 6, 2018 8:54 AM

The big deal for some of the would be users has been the validation process, today we don't wait for anything... waiting 3 days for validation is a deal breaker for some people these days... I think it's crazy, but it's true. Remember back in the day where and elite board would do a thorough background check to see if you would be given access? and sometimes even longer after initial access to see if you would be able to get to the 'good stuff'? Unless you were well know and already established, some BBS wouldn't give you high access at all. Legal concerns and all that. I had to set some of my friends up with certain wish list software so they could be granted access. Imagine going back to setting up an upload/download late at night so it would be waiting for you in the morning.... kids are doing the is it here yet dance after 5 minutes... after 15 minutes they think the internet is broken... at half an hour I think the mind is ready to 'splode...  they never make it to an hour.... never


Edited by _The Doctor__, Tue Mar 6, 2018 8:59 AM.


#333 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Tue Mar 6, 2018 9:32 AM

inetd. it was a typo.

 

-Thom



#334 16kRAM OFFLINE  

16kRAM

    Space Invader

  • 19 posts

Posted Tue Mar 6, 2018 1:27 PM

Nobody interested?

 

-Thom

Hi Thom,

 

I'm interested.

 

While stepping through the disassembly, I often leave my connection open for a long time. I'd feel better doing that in a sandbox.

 

Also I like the idea of worry-free filling up the pbnotes with Atari-specific threads.

 

- Michael S.



#335 16kRAM OFFLINE  

16kRAM

    Space Invader

  • 19 posts

Posted Wed Mar 7, 2018 10:36 PM

Update: My attempt to quote tschak909 didn't work correctly.

 

Posted by tschak909 on Mon Feb 19, 2018 8:17 PM

 

Somebody took TLP and made an xex out of it, and it has a very odd bug, where just before it finishes drawing the password prompt, the cart somehow falls out into the weeds and jumps to warm start....

 

Not a bug. There is some copy-protection being employed here.

 

At B863 exist 12 curious bytes. This is a bit of obfuscated code that is decrypted and copied from ROM to RAM in the subroutine at B84B.

 

       lda     #<(LB863-1)    ; Address of obfuscated code (well, minus 1)
       ldy     #>(LB863-1)
       ldx     #$0C           ; Initialize counter to 12
       jmp     sub_b84b

 

sub_b84b:
        sta     off_EC        ; Create pointer to obfuscated code
        sty     off_EC+1      ;

        ldy     #$00          ; Point to the first byte
        lda     #$55          ; Decryption key 01010101 
        sec                     

 

@LOOP:      

        iny                   ; Increment pointer index 
        rol     a             ; Rotate the key 01010101 -> 10101010
        pha                     
        eor     (off_EC),y    ; Decrypt the byte using exclusive OR
        sta     L3E33-1,y     ; Save the byte to RAM
        pla                     
        dex                   ; Decrement counter 
        bne     :@LOOP        ; Continue looping while counter not equal to 0

        jmp     L3E33         ; B860 4C 33 3E
 

LB863:  .byte   $65,$AA,$12,$F7,$49,$D5,$25,$A9
        .byte   $19,$DC,$B2,$CD

 

 

Here is the decrypted code. (Note: BFFC is in the ROM's address space and contains a 0).

 

L3E33:

       DEC $BFFC              ; Try to alter a ROM address from 0 to -1.
       LDA $BFFC              ; Load "altered" value into CPU.
       BEQ $3E3E              ; Still equal to 0? Yes, you're cool. RTS
       JMP COLDSV             ; No? Stinking Pirates! Reboot
       RTS                    ;

 

One de-protection solution is to change the 4C (JMP) at B860 to 60 (RTS) in the ROM file and re-convert it to an XEX.

 

- Michael


Edited by 16kRAM, Wed Mar 7, 2018 10:40 PM.


#336 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Wed Mar 7, 2018 10:50 PM

Well, I'll be damned! Great find, Michael!

 

-Thom


Edited by tschak909, Wed Mar 7, 2018 10:52 PM.


#337 spiffster OFFLINE  

spiffster

    Combat Commando

  • 8 posts

Posted Thu Mar 8, 2018 8:42 PM

Nobody interested?

 

-Thom

I'd be interested.  I don't have a working Atari terminal yet (working on it), but I'd like to take a look around.



#338 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Thu Mar 8, 2018 8:45 PM

In the mean time, you can use the pterm client from cyber1.org, or run the PLATO cartridge in an emulator such as Altirra. :)

 

-Thom



#339 a8isa1 OFFLINE  

a8isa1

    Stargunner

  • 1,472 posts

Posted Thu Mar 8, 2018 8:56 PM

Update: My attempt to quote tschak909 didn't work correctly.

 

Posted by tschak909 on Mon Feb 19, 2018 8:17 PM

 

Somebody took TLP and made an xex out of it, and it has a very odd bug, where just before it finishes drawing the password prompt, the cart somehow falls out into the weeds and jumps to warm start....

 

Not a bug. There is some copy-protection being employed here.

 

At B863 exist 12 curious bytes. This is a bit of obfuscated code that is decrypted and copied from ROM to RAM in the subroutine at B84B.

 

       lda     #<(LB863-1)    ; Address of obfuscated code (well, minus 1)
       ldy     #>(LB863-1)
       ldx     #$0C           ; Initialize counter to 12
       jmp     sub_b84b

 

sub_b84b:
        sta     off_EC        ; Create pointer to obfuscated code
        sty     off_EC+1      ;

        ldy     #$00          ; Point to the first byte
        lda     #$55          ; Decryption key 01010101 
        sec                     

 

@LOOP:      

        iny                   ; Increment pointer index 
        rol     a             ; Rotate the key 01010101 -> 10101010
        pha                     
        eor     (off_EC),y    ; Decrypt the byte using exclusive OR
        sta     L3E33-1,y     ; Save the byte to RAM
        pla                     
        dex                   ; Decrement counter 
        bne     :@LOOP        ; Continue looping while counter not equal to 0

        jmp     L3E33         ; B860 4C 33 3E
 

LB863:  .byte   $65,$AA,$12,$F7,$49,$D5,$25,$A9
        .byte   $19,$DC,$B2,$CD

 

 

Here is the decrypted code. (Note: BFFC is in the ROM's address space and contains a 0).

 

L3E33:

       DEC $BFFC              ; Try to alter a ROM address from 0 to -1.
       LDA $BFFC              ; Load "altered" value into CPU.
       BEQ $3E3E              ; Still equal to 0? Yes, you're cool. RTS
       JMP COLDSV             ; No? Stinking Pirates! Reboot
       RTS                    ;

 

One de-protection solution is to change the 4C (JMP) at B860 to 60 (RTS) in the ROM file and re-convert it to an XEX.

 

- Michael

Here's the updated file:Attached File  TLP-2400c.xex   8.03KB   25 downloads.   It seems to work. At least, SHIFT+STOP (Atari SHIFT+START+S) doesn't cause it to kick out to BASIC.

 

I can't try it on real hardware, myself. I gave up my 850 long ago.



#340 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Sat Mar 17, 2018 7:32 PM

I found a nice orange palette by setting 32 to both color2 and color4, and setting 202 to the text luminance. (you can do this on the disassembly mentioned above), and have built my tlp bin to do this, as well as use the IST-III terminal. We do need to merge in MrFish's excellent font, as soon as we can.

 

A vid of my lab PLATO system, and a menu based router I am working on: :)

 

 

-Thom



#341 troff OFFLINE  

troff

    Chopper Commander

  • 118 posts
  • Location:Enfield, CT

Posted Sat Mar 17, 2018 8:24 PM

Wow, Thom, that looks awesome!  Both the color palette and the menu system!!



#342 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Mon Mar 19, 2018 1:17 AM

Would any of you like to jump onto a combo of a hangouts (for audio) and s0confer (for screen sharing on PLATO), to take a systems tour, as well as a dig through the programming environment, of the system?

 

I'm looking for interested people who want to hack on this system, with me.

 

-Thom



#343 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Tue Mar 20, 2018 9:45 AM

awfully quiet.

 

-Thom



#344 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Wed Mar 21, 2018 10:46 AM

If you connect to my system with pterm, you see the following from the Atari router:

 

atariroute_7.PNG

 

atariroute_8.PNG

 

gosh, I'm hoping if I keep posting stuff being worked on, and keep asking, somebody may eventually say, "GEE, THIS IS NEAT! I WANT TO HELP!" :)

 

-Thom



#345 MrFish ONLINE  

MrFish

    River Patroller

  • 4,799 posts
  • Location:1010-1010

Posted Wed Mar 21, 2018 12:02 PM

It is neat Thom. This is one of the coolest things happening on the forum here. It's great to see this thing pulled back to life.

 

I would like to help out, but I have WAY too many other projects that are waiting in line before I could even think about spending much time on something like this.

 

Although, I am willing to help on a few things, if they're possible. One thing I'd been thinking about is whether or not it would be possible to improve the font even further. To do so, it would be necessary to increase the available height of all characters (and subsequently all terminal text lines) by 1 pixel. This would allow for great improvement to characters such as the lower-case "e" and "s". All other characters would benefit as well, and overall readability would be increased.

 

I don't know what overall effect this may have on the rest of the system. The display list, screen ram, and number of bytes defining each character would all be increased, for one. Without knowing the current, exact limits of the graphics display, I can't say for sure if it'd even be possible. Just taking a guestimation, it looks like it's about 190 pixels high. If you added 1 pixel per 7 lines (the current height of each character) that would put things at around 218, which is just about the max for a lot of NTSC machines. So, it looks to be in the realm.

 

Anyway, I think the benefits would be worth it, but I'll leave it to you and others who are working on the code to decide if it's feasible or even of interest.


Edited by MrFish, Wed Mar 21, 2018 12:26 PM.


#346 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Wed Mar 21, 2018 12:06 PM

I'd love it, if we can find the space. Right now, it's clear that 8K is about the max for whatever the PLATO cartridge assemble to, the display memory eats up 40K of system memory (32K for the full res display, 8K for the scaled display).

 

We know we can get a tiny chunk of space by removing the 1030 and MPP modem handlers. 

 

I'd definitely love to move your current font data into the official disassembly as a compile time option.

 

-Thom



#347 16kRAM OFFLINE  

16kRAM

    Space Invader

  • 19 posts

Posted Wed Mar 21, 2018 12:32 PM

As far as eking out another scan line per character to create a more readable font, the math may not support it.

 

The PLATO terminal's character mode is 64x32 characters. With the 192 scan lines on the Atari, that leaves exactly 6 scan lines per character row - which is where it is now.

 

; .##.....
; #..#....
; ####....
; #..#....
; #..#....
; ........

 

I'm not a graphics expert so maybe there's some overscan tricks, but it'd need 32 additional scan lines to add one to each character row.



#348 MrFish ONLINE  

MrFish

    River Patroller

  • 4,799 posts
  • Location:1010-1010

Posted Wed Mar 21, 2018 12:45 PM

As far as eking out another scan line per character to create a more readable font, the math may not support it.

 

The PLATO terminal's character mode is 64x32 characters. With the 192 scan lines on the Atari, that leaves exactly 6 scan lines per character row - which is where it is now.

 

; .##.....
; #..#....
; ####....
; #..#....
; #..#....
; ........

 

I'm not a graphics expert so maybe there's some overscan tricks, but it'd need 32 additional scan lines to add one to each character row.

 

Yep, I was just having another look and realised I'd miscounted. It's definitely a 6 pixel high font. 224 lines would put us just outside what's viewable on most CRT's (220 being about the typical limit). Maybe it's be possible to shorten by one terminal line, but I'm not sure how that might upset things.

 

Anyway, I already have such a font on tap. So if it's possible, I could get us looking like this (click to see it zoomed properly)...

 

7 x 4 font.png


Edited by MrFish, Wed Mar 21, 2018 12:53 PM.


#349 tschak909 OFFLINE  

tschak909

    River Patroller

  • 2,344 posts
  • Location:USA

Posted Wed Mar 21, 2018 1:02 PM

Dude, you have a gift. That's beautiful. :)

 

-Thom



#350 MrFish ONLINE  

MrFish

    River Patroller

  • 4,799 posts
  • Location:1010-1010

Posted Wed Mar 21, 2018 1:11 PM

I did the best I could with the 6-pixel font (although there are some other character options available for that too), but you can see why I'm looking for 1 extra pixel.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users