Jump to content

brfennpocock

New Members
  • Content Count

    8
  • Joined

  • Last visited

Posts posted by brfennpocock


  1. If I understand the problem correctly …

     

    PETSCII isn't used for screen display codes; I believe the PET will use a similar (same?) code set as the VIC-20 / C=64 / C=128, seen in http://sta.c64.org/cbm64scr.html — It's like PETSCII with the 3° group of 32 chars swapped into the 1° position. A in PETSCII = $41, A in screen codes = $01.

     

    A reverse char is the same as its normal char & $80 (+128), so where A is $01, reverse A is $81; π is $5e, reverse π is $de.

     

    To get the PETSCII for a non-reverse char, and/or a flag to indicate if a char is reversed,

    REM screen address
    AD% = (screen code base RAM address) + Y% * (screen width) + X%
    
    REM is it reversed? 0 = false, 128 = true.
    RV% = PEEK(AD%) AND 128
    
    REM convert screen code to PETSCII
    SC% = PEEK(AD%) AND 127
    PC% = SC%:IF SC% < 32 THEN PC%=SC%+64

     

     

    • Like 1

  2. Do I correctly understand that you're interested in writing (also) a PLATO terminal for the ’64 or ’128?

    I'm curious if a limited-capability terminal on a ’64 would really be usable for playing most of the games on PLATO … ? but seems like you're definitely more the expert than I …

     

    In particular: remapping from ( 512 × 512 px = 64 × 32 ch ) to ( 320 × 200 px = 40 × 25 ch ) or ( 640 × 200 px = 80 × 25 ch ) in a non-disruptive way.

     

    It looks like, per your text file, the A][ version centered a 192×256px screen and expects its own special 4×6px custom character sets? That would certainly work “passably” on a VIC-II, as long as the 4×6 fonts exist — and with some weird color artefacts across 8×8px cell boundaries, of course.

     

    On the other hand, it seems like the VDC on the ’128 should handle 512×512 @ 16×8 just fine — definitely as 640×512, with margins blanked on each row, although it wouldn't surprise me if some fudging with the VDC registers wouldn't allow for directly mapping exactly 512×512, albeit with not-precisely-square pixels.

     

    I've played around a bit with (including submitting the odd patch to) Linux PTerm, I'd be interested in lending a hand if possible.


  3. Strangely, I couldn't find anywhere to buy the (standard .1" 12/24 pin) edge connectors for the 2600, so I had these printed up by (wonderful) OSH Park … just posting here in case anyone else might have a use for them.

     

    https://oshpark.com/shared_projects/nNu0ppnR

     

    I personally just soldered pin strips to the 24 solder points and used female-to-male breadboard wires to break it out, but do whatever you like. The +5V and GND pins are duplicated to be a little easier to alligator-clip them, if you prefer.

     

    Unfortunately there's a minimum order of 3 (Came out to about $18 for me), but … maybe someone else will have a use for this. (And, no, I don't get a kickback from OSH Park, you're welcome to the KiCad or Gerber files if you want them.)

     

    Speaking of which, I do have a spare one (I used 2) if anybody wants it.

     

     

    • Like 1
×
×
  • Create New...