Hejsan Allihop!
N{r jag skrev ett litet f|rsvarstal f|r ST's grafikm|jligheter, som ju
baktalats n}got av en del, fick jag ett svar som antydde att jag uttryckt
mig oklart, eftersom han trodde jag hade en STE.
N{r jag s} skrivit mitt privata svarsbrev (E-mail) slog det mig att {ven
andra, som inte kom sig f|r att fr}ga kan vara intresserade.
H{r {r allts} i stort samma svar som han fick:
 
Det blev visst n}got missf|rst}nd, f|r n}gon STE har jag ju inte,
utan en alldeles vanlig 520 STM.  Ja, alldeles vanlig {r den kanske inte,
eftersom jag har byggt till den med litet av varje efterhand, s}som:
 
  2.5 MByte RAM
  Dubbelsidig diskdrive med valbar 8, 10, eller 12 MHZ FDC_klocka
  TOS i EPROM, s} jag kan byta mellan 2 TOS
  16 MHz CPU-speeder (kr}ngligt, men {ntligen fasl}st!)
  Interlace-interface (vilket inkluderar OverScan)
  (Naturligtvis hembyggen alltihop)
 
Som sagt, med 6 vippomkopplare + 1 tryck-knapp extra p} baksidan,
s} ser den v{l inte helt "vanlig" ut l{ngre.
 
  Interlace uppn}r jag genom att kapa ledningsm|nstret som leder ut
vertikal-synken fr}n GLUE till resten av datorn, och i st{llet koppla
dit en synk-signal skapad av min interlace-generator.
Denna best}r i grunden av 4 IC's:
  1st 74HC4040 som av PSG'ns 2MHz klocka skapar 7 adressbitar till ett
      EPROM som allts} kan generera nytt styrdata per 500 nanosek.
      Denna r{knare nollst{lls ocks} av samma styrdata, s} att cykeln
      blir fullt synkron med horisontalperioden i varje "resolution".
  1st 27c512 EPROM som allts} f}r 7 av sina adressbitar av r{knaren.
      Ytterligare  4 adressbitar anv{nds som feedback ifr}n 4 av data-
      utg}ngarna (latchade f|rst}s), s} att styrfunktionen "minns".
      kvarst}r allts} 5 adressbitar som k{nner av f|ljande:
        Display_Enable fr}n GLUE (som kapas som f|r OverScan)
        -Composite_Blank (GLUE pin 36)
        -Vertikal_Synk   (GLUE pin 38) (som kapas fr}n allt annat)
        Ny styrsignal: Overscan_Enable
        Ny styrsignal: Interlace_Enable
      Av data-bitarna redovisades 5st ovan, de }terst}ende 3 nedan:
        Ny -Begin_overscan puls (till 74HC00)
        Ny -End_overscan puls   (till 74HC00)
        Ny -Horisontell_Synk    (som normalt ej beh|vs, se nedan)
      Den senare {r egentligen anledningen till att jag blev tvungen
      att bygga generatorn, eftersom jag vid andra experiment lyckats
      "br{nna" den utg}ngen i GLUE, s} normalt beh|vs den inte.
      Om du undrar vart nya -VSynk tog v{gen s} {r det en av de 4 bitar
      som {ven anv{nds som feedback enligt ovanst}ende.
  1st 74HC574 som latchar och buffrar de 8 data-bitarna.  [ven denna
      krets klockas av PSG'ns 2MHz klocka (PSG pin 22 el. GLUE pin 54).
  1st 74HC00 som kombinerar 2 av ovanst}ende data-bitar med den
      Display_Enable som {ven gick till adressbit ovan, f|r att skapa
      den "yttre" Display_Enable som g}r till MMU och Shifter.
 
Till detta kommer ytterligare en krets med 2 IC's som skapar en extra
8-bitars port p} adress $FF8261, s} att man kan skriva styrbitarna
Overscan_Enable och Interlace_Enable samtidigt med "resolution"-val.
  1st 74HC273 latchar databussen till portbitar som nollas vid RESET
  1st 74HC139 kodar Shifterns -CE D7 D6 och A5 s} att den nya porten
      bara skrivs om D7 {r l}g men D6 H|g.  Dock M]STE man d{ skriva
      ett WORD till adress $FF8260, eftersom Shiftern annars tar fel.
Kodningen har valts s} att normala "resolution"-inst{llningar inte
ska p}verka den nya porten, vilket hittils alltid visat sig st{mma.
 
EPROMmets Interlace-styrning {r mycket enkel, s} att Interlace_Enable
helt enkelt v{ljer h|jd bildniv}, genom att f|rdr|ja synken.
Det medf|r ju att Display_Enable, som ej f|rdr|jts, aktiverar MMU som
vanligt, dvs en f|rkortad period efter den "yttre" vertikal-synken.
Men praktiskt anv{nd ska ju bilden skifta denna halva linjeh|jd 50 ggr
i sekunden, s} det kr{vs ett interrupt-program ocks}.
Jag har hittills bara skrivit en monoemulator som nyttjar detta f|r
att faktiskt uppn} 400 linjer per bild.  I f{rg blir det ju mycket
knepigare att eliminera flimret, men jag planerar {nd} att skriva en
ers{ttare till overscan.prg som kan kombinera interlace med overscan
och {ven st{nga av dessa vid k|rning av inkompatibla program.
Tillsvidare aktiverar jag dock overscan genom att f|reg} OVERSCAN.PRG
med ett litet program (LACE_1.PRG) i AUTO-foldern, som helt enkelt
s{tter Overscan_Enable-biten i den nya porten.
(Fast jag har f|rst}s en brytare emellan s} jag kan bryta manuellt.)
 
Jag har tyv{rr inga ritningar som filer, utan bara handritade, och de
f}r jag inte in i modemet :-(  men h|r av dig om du {r intresserad.
EPROM-programmet (64 KByte styrdata :-) finns naturligtvis som fil,
men {r ju helt utan v{rde utan identisk kretsl|sning.
 
Slutligen ska jag v{l anknyta till din undring om STE'n, med att den
Display_Enable signal som f|rbinder kretsarna i ST inte l{ngre finns
tillg{nglig p} STE'n.  Dock finns tydligen samma funktion kvar internt
i de nya chip'arna, eftersom vissa program fixar "mjuk" overscan b}de
p} ST och STE.  Och allt som kan g|ras i mjukvara borde {ven g} att
g|ra, mycket effektivare, i h}rdvara.  Fast kr}ngligt {r det nog!
 
Min "Snailmail"-adress {r:
        Ronald Andersson
        H|ders V{g 7
        145 70 Norsborg
 
Mitt tel-nr: 0753 - 84 105    (Ej modemsvar)
