Jonkman Microblog
  • Login
Show Navigation
  • Public

    • Public
    • Network
    • Groups
    • Popular
    • People

Notices by Vertigo (vertigo@mastodon.social), page 26

  1. Vertigo (vertigo@mastodon.social)'s status on Saturday, 02-Sep-2017 12:15:06 EDT Vertigo Vertigo

    YES! Major milestone achieved with the Kestrel project. I managed to run my first C program on the Kestrel-2DX. https://hackaday.io/project/10035-kestrel-computer-project/log/66294-kestrel-2dx-runs-its-first-c-program

    This does two things for me:

    1) Finally have an approach to running C code, so I no longer have a need to port/invent a different programming language.

    2) It vindicates the compatibility of my homebrew processor design against the RISC-V ISA specifications.

    (I've since improved my build process since I posted the article.)

    In conversation Saturday, 02-Sep-2017 12:15:06 EDT from mastodon.social permalink

    Attachments

    1. Invalid filename.
      Kestrel-2DX Runs its First C Program | Details | Hackaday.io

      So, I decided to try getting my RISC-V GCC compiler working with my Kestrel-2DX again, and this time, for whatever reason, my mental model just "clicked" and things worked.  It was an iterative process to get this far; however, I'll describe things in the rough order I've accomplished things.

      Here's the C program I wanted to run:

      /* Invert the contents of the video frame buffer on cold boot. */
      unsigned long long *scrp, *endp;
      void
      _start(void) {
          scrp = (unsigned long long *)0x10000;
          endp = scrp + 2000;
          while(scrp < endp) {
              *scrp ^= 0xFFFFFFFFFFFFFFFF;
              scrp++;
          }
          while(1) ;
      }
      

      I was able to compile this into statically-linked ELF binary file with the following command:

      ./riscv64-unknown-elf-gcc -O1 -c floop.c -o floop.o -march=RV64I
      ./riscv64-unknown-elf-ld floop.ld floop.o -o floop.exe -nostdlib

      You'll notice that I have a custom loader script, which looks like this:

      ENTRY(_start)
      MEMORY
      {
              ROM (rx) : ORIGIN = 0x00000, LENGTH = 0x8000
          
  2. Vertigo (vertigo@mastodon.social)'s status on Thursday, 31-Aug-2017 10:29:43 EDT Vertigo Vertigo

    On the one hand, I want to use Shen to construct a compiler for writing ROM images for the Kestrel-2DX. On the other hand, it's just one more dependency a new-comer to the project would need to install to get things working.

    Why can't Python just *come* with a parser in the standard library already? The value of parsers is known around the world. This should be a no-brainer.

    In conversation Thursday, 31-Aug-2017 10:29:43 EDT from mastodon.social permalink
  3. Vertigo (vertigo@mastodon.social)'s status on Wednesday, 30-Aug-2017 22:40:18 EDT Vertigo Vertigo

    I wish I didn't have to write my own systems programming language. I wish I could just think my firmware into existence.

    In conversation Wednesday, 30-Aug-2017 22:40:18 EDT from mastodon.social permalink
  4. Vertigo (vertigo@mastodon.social)'s status on Wednesday, 30-Aug-2017 22:39:01 EDT Vertigo Vertigo
    • clacke

    @clacke Completely non sequitor, but I have to ask -- how did you manage to write a 2407 character toot? ;)

    In conversation Wednesday, 30-Aug-2017 22:39:01 EDT from mastodon.social permalink
  5. Vertigo (vertigo@mastodon.social)'s status on Wednesday, 30-Aug-2017 01:40:47 EDT Vertigo Vertigo
    • clacke

    @clacke In times of dire need, those in fortunate positions should always help donate to recovery causes. But, I also sympathize with those who do not trust intermediating organizations, especially those with histories of mismanaged funds.

    In conversation Wednesday, 30-Aug-2017 01:40:47 EDT from mastodon.social permalink
  6. Vertigo (vertigo@mastodon.social)'s status on Wednesday, 30-Aug-2017 01:39:30 EDT Vertigo Vertigo
    • clacke

    @clacke I'm going to play devil's advocate here, because I feel these need to be on record.

    Donations are fundamentally different; you donate because it provides value to whom you are donating. You generally expect nothing in return; as such, you're basically an angel investor.

    Also, there is a large body of historical evidence where charitable organizations were caught consuming greater than 80% of funds donated for non-charitable purposes (usually some form of overhead).

    In conversation Wednesday, 30-Aug-2017 01:39:30 EDT from mastodon.social permalink
  7. Vertigo (vertigo@mastodon.social)'s status on Tuesday, 29-Aug-2017 01:14:56 EDT Vertigo Vertigo

    The Kestrel-2DX computer design is coming together. Just implemented the MGIA circuit, so it can now display 640x200 bitmapped graphics out of any one of three 16KB video pages. I also expose VSYNC pulse to the computer via the GPIA input port.

    Once the KIA and SD card interfaces are implemented, the 2DX will have feature parity with the Kestrel-2 before it. It will then be time to write an operating system and/or resident programming language for it.

    In conversation Tuesday, 29-Aug-2017 01:14:56 EDT from mastodon.social permalink
  8. Vertigo (vertigo@mastodon.social)'s status on Friday, 25-Aug-2017 17:25:56 EDT Vertigo Vertigo

    Well, this sucks. I want to post pictures from my mobile device, but Mastodons mobile web interface will not let me upload from it. I can take a new picture or I can film new video but I cannot upload anything from my gallery. :(

    In conversation Friday, 25-Aug-2017 17:25:56 EDT from mastodon.social permalink
  9. Vertigo (vertigo@mastodon.social)'s status on Thursday, 24-Aug-2017 10:24:05 EDT Vertigo Vertigo

    16K is used for video RAM, so that leaves only 8K to 32K for programs.

    In conversation Thursday, 24-Aug-2017 10:24:05 EDT from mastodon.social permalink
  10. Vertigo (vertigo@mastodon.social)'s status on Thursday, 24-Aug-2017 10:16:14 EDT Vertigo Vertigo

    Block RAM is variable, since it depends on the FPGA. It's 48K for Nexys-2 board; but, probably just be 24K for Terasic DE-1.

    In conversation Thursday, 24-Aug-2017 10:16:14 EDT from mastodon.social permalink
  11. Vertigo (vertigo@mastodon.social)'s status on Thursday, 24-Aug-2017 10:12:56 EDT Vertigo Vertigo

    I'm working on making yet another variant of my Kestrel-2 computer design.

    * KCP53000 CPU (64-bit RISC-V) instead of the S16X4A (16-bit stack architecture)
    * 32K of ROM
    * 48K of FPGA block RAM
    * GPIA for misc. I/O incl. SD card
    * MGIA for 640*200 monochrome video
    * KIA for PS/2 keyboard
    * 16MB reserved for "RAM expansion" (where I can develop SRAM, SDRAM, et. al. modules)

    Hoping to use it as a development platform for the Kestrel-3. Hence it's name: Kestrel-2/DX.

    In conversation Thursday, 24-Aug-2017 10:12:56 EDT from mastodon.social permalink
  12. Vertigo (vertigo@mastodon.social)'s status on Wednesday, 23-Aug-2017 11:41:30 EDT Vertigo Vertigo

    Attn @cmr - you might find this of interest! Factorial example in Rust successfully compiled for RISC-V for the first time.

    https://groups.google.com/a/groups.riscv.org/d/msg/sw-dev/hMB8RKLFYrw/QiQvO-ScAAAJ

    In conversation Wednesday, 23-Aug-2017 11:41:30 EDT from mastodon.social permalink
  13. Vertigo (vertigo@mastodon.social)'s status on Wednesday, 23-Aug-2017 11:24:25 EDT Vertigo Vertigo

    TIL: early C compilers did not have unique namespaces for structure members. This is why you needed to write stuff like:

    struct Node {
    struct Node *n_next, *n_prev;
    };

    instead of eliding the n_ prefixes.

    This was important because the `.` and `->` operators only knew that its LHS was a pointer, not a pointer to a Node.

    In conversation Wednesday, 23-Aug-2017 11:24:25 EDT from mastodon.social permalink
  14. Vertigo (vertigo@mastodon.social)'s status on Tuesday, 22-Aug-2017 11:02:55 EDT Vertigo Vertigo

    AROS would make a nice desktop environment for the Kestrel-3. I know I have always wanted a port of Plan 9 for it, but I dunno; AmigaOS just seems like it'd be substantially easier for people to learn how to use and write code for.

    Don't mind me; just idly day dreaming as I'm getting ready for work.

    In conversation Tuesday, 22-Aug-2017 11:02:55 EDT from mastodon.social permalink
  15. Vertigo (vertigo@mastodon.social)'s status on Tuesday, 22-Aug-2017 11:00:36 EDT Vertigo Vertigo

    Sometimes, I wonder if I should get back into the AROS community (FOSS AmigaOS clone).

    In conversation Tuesday, 22-Aug-2017 11:00:36 EDT from mastodon.social permalink
  16. Vertigo (vertigo@mastodon.social)'s status on Tuesday, 22-Aug-2017 03:44:47 EDT Vertigo Vertigo
    • clacke

    @clacke You'll want to contact Bernd Paysan, IIRC, as he's the original author. I believe he hosts its source code on his website. Disclaimer: My info may be dated, though.

    In conversation Tuesday, 22-Aug-2017 03:44:47 EDT from mastodon.social permalink
  17. Vertigo (vertigo@mastodon.social)'s status on Monday, 21-Aug-2017 19:10:47 EDT Vertigo Vertigo

    If I had to do it all over again, I probably would have gone with Fossil for the project.

    In conversation Monday, 21-Aug-2017 19:10:47 EDT from mastodon.social permalink
  18. Vertigo (vertigo@mastodon.social)'s status on Monday, 21-Aug-2017 19:01:10 EDT Vertigo Vertigo

    Alas, due more to social reasons, I ended up placing my pages on Github (e.g., hosting my blogs as static content, as well as the project pages, etc). I had people saying they preferred git because everyone else was using it, etc.

    Of course, except for a small number of people, nobody who said they'd help contribute actually has done anything at all, so go figure. :) Today, the continued use of Github is merely an artifact of inertia.

    In conversation Monday, 21-Aug-2017 19:01:10 EDT from mastodon.social permalink
  19. Vertigo (vertigo@mastodon.social)'s status on Monday, 21-Aug-2017 18:59:03 EDT Vertigo Vertigo

    I remember back when I first was deciding whether or not to host Kestrel-3's pages on Github or not. #fossil was one choice on the table, and was actually a strong contender at the time.

    Reason being, #fossil is relatively easy to port compared to its competitors. To port Mercurial, you need to first port Python and enough of its supporting libs to run it. To port Git, you need to basically clone an entire Linux distro's user-space.

    Fossil would have let me eat my own dogfood quicker.

    In conversation Monday, 21-Aug-2017 18:59:03 EDT from mastodon.social permalink
  20. Vertigo (vertigo@mastodon.social)'s status on Monday, 21-Aug-2017 18:57:08 EDT Vertigo Vertigo

    So far, I'm working on a side project of the Kestrel persuasion and using #fossil to maintain my project history. More as a means of getting used to working with it.

    Good results so far; no worse than using Git except for a few gotchas (e.g., only tracking files and not dirs), but problems have been few in number and relatively minor in scope.

    In conversation Monday, 21-Aug-2017 18:57:08 EDT from mastodon.social permalink
  • After
  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

Jonkman Microblog is a social network, courtesy of SOBAC Microcomputer Services. It runs on GNU social, version 1.2.0-beta5, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All Jonkman Microblog content and data are available under the Creative Commons Attribution 3.0 license.

Switch to desktop site layout.