0xMIN computer

  • RaconTPT
    12th Jul 2020 Member 2 Permalink

    Can someone pls translate this from Raconglish to normal English (Im not good at explaining things).

     

    For now I'm calling it the "0xMin" short for "Mininum, Ox design computer".
    id:2564576 is the smallest CPU in tpt.

     

    Specs:

    linear HDD (instead of ram), up to

    30bit accumilator,

    8 bit memory address relative pointer addresses

     

    things im working on for the next computer:

    more pointers,

    simpler 9bit addresses (+/-,8bit number); (done)

    supporting data structures with parent,child and neighbour addresses;

    GPU peripheral;

    making code for a compiler; (semi working)

     


    programming:
    HDD isn't separate from code. Each filt pixel contains one line of code.
    The 30bits are plit up in this way:
    18 bits don't matter,8 bit number,4 bit command


    commands:
    there are 16 commands:
    0-1:move pointer commands,

    2-4:ALU commands,
    5: write,

    14:null command, (for when ctype = 30)
    6-15 nothing yet,


    full list:
    0:jump
    1:move R/W pointer
    2:NOR gate
    3:variable red shift
    4:variable blue shift
    5: write

     

    ALU

    There is one 30 bit accumilator that can only be changed by ALU commands.
    The ALU compairs the value under the R/W pointer with the value of the accumilator. The ALU then overwrites the accumilator with the answer.

    This means that there isn't a "read" command but instead have to use about 3 lines of code.

    addresses:
    Each of the 8 bits in the address moves the pointer by a surtain amount
    The first(bluer) bit moves it +1, the second moves it back -2, then +4,-8,+16,-32,+64,-128
    There is a one frame latency for the addess to be sent to the pointers so if you want to jump +16, you have to put the address +16 on the filt before the one with command jump.

    scaling computer

    memory: can be added by manualy moving the 3 DMND(they set a max memory) forwards and adding more filt in a line.

     

    It is simple (for me at least) to also increase the amount of commands,pointers and the bits in an  address. These are more complicated to explain here so,work out how the computer works to know how to scale its processing power.

     

    Inner workings(misc bit)
    In the very first frame, the computer moves particle id's around so that the ARAYs at the bottom fire before the DRAYs above them (drays are covered with INWR). This means that it worn't work properly if you copy paste it after that frame.

    2564576

    compairing 0xmin to R216K:
    advantages of 0xmin over R2 (excluding size):

    1. The 0xmin has relative pointers instead of absolute memory addressing, so it can in theory access infinite memory, as long as tpt is bit enough

    2. 0xmin is 30 bit (log2((2^30)-1)bit
    disadvantages:

    1. doesnt have adder
    2. 0xmin V1 doesnt have if statement of any kind (they are still possible to make of cause).
    3. doesnt have get/read/load command

    Edited 35 times by RaconTPT. Last: 14th Nov 2021
  • JustAPlayer
    12th Jul 2020 Member 0 Permalink

    cool, can't wait for an improved version of this computer to arrive. it definetly has some potential to become one of the most popular ones like the R216K2A, since this is the smallest subframe CPU in TPT! i couldn't find anything smaller. its also impressive that you managed to fit an ALU in there.

  • RaconTPT
    12th Jul 2020 Member 1 Permalink

    the alu is 50pixels the bit that isn't RAM of ALU is 67 pixels, 20 for the "root" computer. it's ridiculously small.

    Edited 3 times by RaconTPT. Last: 12th Jul 2020
  • LBPHacker
    13th Jul 2020 Developer 1 Permalink
    So... when will this be Finnished?
  • RaconTPT
    14th Jul 2020 Member 1 Permalink

    more or less finnished now

     

    what should I call this computer? I use 0xMin at the moment.

    edit 15/7/20: no.

    Edited 2 times by RaconTPT. Last: 15th Jul 2020
  • TiredTech
    14th Jul 2020 Member 1 Permalink

    I think it should be called XLine.

    X for 0x and Line as reference to the massive line of filt necessary to run pretty much anything.

    I think it sounds cool. XLine... XLine... hmm... Yeah it sounds cool.

  • RaconTPT
    17th Jul 2020 Member 1 Permalink

    I think I'll call it something like Modular,Scalable Computing

    Edited once by RaconTPT. Last: 17th Jul 2020
  • JustAPlayer
    17th Jul 2020 Member 1 Permalink

    Modular, Scalable Computing... hmmm, MSC-001S? the S is for "small", if there is going to be a bigger and more powerful version. that more powerful version should have a GPU, more I/O ports and maybe you should make a keyboard and a display for it.

  • RaconTPT
    20th Jul 2020 Member 1 Permalink

    @JustAPlayer (View Post)

     maybe MS1M or MS1T for Modular Scalable computer Minimum/TuringComplete  Modular, Scalable,Computer.
    I'll make an IO port though I won't make my own keyboard and display.

    Edited 2 times by RaconTPT. Last: 8th Aug 2021