Jump to content

Stuart

Members
  • Content Count

    1,019
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by Stuart


  1. TMS 9900 Family System Development Manual (Application Report) (https://archive.org/details/bitsavers_tiTMS9900MstemDevelopmentManual1977_4482262/mode/2up). Contains many of the diagrams used in the "how-to-build-your-own-working-16-bit-microcomputer.pdf" book.


    9900 Family Systems Design and Data Book. A hefty tome, but most of it covered in the other 9900 data books.


    TM 990/100M User's Guide (www.bitsavers.org\components\ti\TMS9900\tm990-100\1602000-9701_TM990_100M_Users_Guide_Dec78.pdf). This is a manual for a single board computer which contains full schematics and circuit descriptions. May be of interest. Hard copies for this or the /101 module come up on eBay occasionally.

     


  2. 7 minutes ago, acadiel said:

    Well, another funny thing I found in that is that they wanted to replace the 9900 with the 9985 still - to replace "9900 plus 9 LS chips".  Did the 9900 support circuitry really need 9 support chips over the 9985?  Any hazards to why?

     

    Presumably the chips used for the 8<>16 bit data bus multiplexer. Wouldn't be needed for the 8-bit external data bus 9985.


  3. The 9918 outputs colour composite on a single pin. The 9928/29 outputs video on three pins - luminance (the 'black and white') on one, and colour difference on the other two - and these are combined into a single colour video signal in the (external) PAL UHF modulator. There are some links on the board that you set according to the VDP in use. So with a 9929 plugged into a board set up for a 9918, you're only getting the luminance signal, with no colour information.

    • Like 5
    • Thanks 1

  4. 42 minutes ago, TheBF said:

    Smallest way to invert EQ flag?

     

    In my work on a native code Forth compiler I am calling the BREAK key routine at >0020.

    It works great but the status register EQ flag logic for the code is opposite to what I need for typical  Forth loop structure.

     

    Does anybody know the smallest amount of code it takes to reverse the logic of the EQ bit? 

    I ended up using jumps and LI instructions to a random register, but that seems verbose.

     

    How about ...

     

          JNE  JMP1

          C     @>0000, @>0002 'Set EQ to not equal.

          JMP  JMP2

    JMP1 C  R0,R0 'Set EQ to equal.

    JMP2 ...

     

    Or ...

     

    XXX  EQU >2000

    STST  R1

    CZC  @XXX,R1

     

     

    • Thanks 1

  5. So you've set the switches such that you can write to the 8K RAM and read the same data back?

     

    Worth checking the supply voltage on pin 28 of the 48T08 when its plugged in and the computer's on. If it's less than ~4.75V then the device goes into write protect mode where you also can't read from it (but the normal 8K RAM would still work). The supply voltage is going to be less than the computer +5V supply anyway due to the diode in the battery backup circuit. If the voltage is low, might be worth just bending pin 28 out of the socket and connecting direct to +5V on the PCB and see if it then works.

    • Thanks 1

  6. I've heard it referred to as "Never Twice Same Color". Didn't you US guys have a knob on the side of the TV to adjust the colour as colour shifts are really noticeable on skin tones?

     

    Never a problem for us Brits with PAL, as the phase reversal of the signal every other line cancels out any errors. It was (is) rather clever how the engineers overlaid the colour information on the black and white signal so that black and white receivers continued to work with the colour signal.

    • Like 3

  7. This is the sort of thing that any disassembler will have problems with, as alluded to above:

     

    06A0         BL @LOADER       Load VDP registers.

    2426
    0280         BYTE >02,>80+R0  Graphics 2 mode, external video off.
    8081         BYTE >80,>80+R1  16K, no display, no interrupt, graphics 2, size & mag=0.
    0682         BYTE >06,>80+R2  PNTBA=>1800. Screen image table.
    FF83         BYTE >FF,>80+R3  CTBA=>2000. Colour table.
    0384         BYTE >03,>80+R4  PGTBA=>0000. Pattern descriptor table.
    3685         BYTE >36,>80+R5  SNTBA=>1B00. Sprite name table.
    0786         BYTE >07,>80+R6  SPGBA=>3800. Sprite pattern generator (descriptor) table.
    0087 BDCOL   BYTE >00,>80+R7  Backdrop=background colour.
    0000         DATA 0

    04C6         CLR R6           Write nulls to VRAM.
    0207         LI R7,VRAMW

     

    The LOADER routine advances the BL return address over those bytes of data, but a disassembler won't know that, and will deliciously disassemble the two words after BL @LOADER as CI R0,>8081, then (I think) a BL R2, and so on.


  8. I like on page 3 "Game about a presidential election". I wonder if such a game would have considered the current reality a bit far fetched?

     

    Page 9 - "Something to get the wife involved."

     

    Page 9 again - "Medical emergency remedies First Aid etc" on cassette. "Will you just bleed quietly for a moment dear while I load this program ..."

     

    Quite surprised how many of the users are wanting to use the computer for business or technical stuff rather than just games - assembly language stuff, cypher & data compression, home energy control, statistics, financial stuff, ...

    • Like 4

  9. 3 hours ago, mizapf said:

    There seems to be a tool JED2EQN, but I have not yet found out where to get it.

    JED2EQN is part of National Semiconductor's OPALjr package which you can download from [http://www.brouhaha.com/~eric/retrocomputing/mmi/palasm/opaljr21.zip]. I got the link from this page: [https://www.uchobby.com/index.php/2008/03/30/gals-for-electronics-hobby/].

     

    I use the OPALjr package (EQN2JED) to compile the GAL for the Mini Cortex. You need to either run it on an old DOS computer, or I use DOSBox under Windows. You only need to extract the DEVICE.LIB, EQN2JED.EXE (or JED2EQN.EXE) and MANUAL.TXT files from the zip file - you don't need to use the installer.

     

    Just tried JED2EQN with a .jed file I had set up to clone a 74LS138 - wasn't entirely successful as it said the /Y0 output was connected to GND ...

     

     

    • Like 2
    • Thanks 1

  10. ;-)  Just be careful that you're not calling routine "1" which saves R11 to SAVRTN, which then calls routine "2" which saves *its* R11 to SAVRTN. Routine "2" will return as intended, but routine "1" will then return to the same place that routine "2" returned to ...

    • Like 1

  11. Mike, I'm not sure why you've got every routine wrapped in a "MOV  R11,@SAVRTN" and "MOV  @SAVRTN,R11". You only need those if the routine actually modifies R11 - including making another BL call from within the routine.


  12. There's no sign of them having burnt? Good catch!

     

    The +5V rail provides about 1A, so R9 and R10 between them need to dissipate around 5W.  3W 0.56 Ohm resistors are readily available - do a bit of Googling and see what will physically fit. Looking at the photo of the 99/4 PSU on the Mainbyte site, that has those resistors with colour codes and they are 5%.

     

    If you measure the voltage at U3 pin 2, does that come up to 5V immediately? The delay is just due to C15 charging through the high resistance R9 and R10?

×
×
  • Create New...