[HN Gopher] New Linux port for the Nintendo 64
       ___________________________________________________________________
        
       New Linux port for the Nintendo 64
        
       Author : MegaDeKay
       Score  : 101 points
       Date   : 2020-12-25 21:52 UTC (1 hours ago)
        
 (HTM) web link (lore.kernel.org)
 (TXT) w3m dump (lore.kernel.org)
        
       | toxypol wrote:
       | how do you even interact with the N64 ... ?? controller????
        
         | ignoranceprior wrote:
         | The ROM comes loaded with a terminal emulator that is operated
         | via the N64 controller:
         | 
         | https://github.com/clbr/joyterm/blob/master/main.c
        
       | CyberRabbi wrote:
       | Waiting for the Vulkan backend and the dolphin port.
        
       | xwdv wrote:
       | How do these sort of ports for niche systems get made?
        
         | protoman3000 wrote:
         | Manuals for the system and it's processor exist. The Linux
         | kernel is pretty agnostic towards what it's running on, as long
         | as it supports the C Language. The difficult part is filling in
         | the system specific blanks in the kernels' source code, which
         | is big work.
         | 
         | See here: https://www.linux-
         | mips.org/wiki/Linux/MIPS_Porting_Guide
        
       | rvz wrote:
       | > "But why", I hear from the back. Having Linux available makes
       | it easier to port emulators and fb or console games.
       | 
       | > Most importantly, because I can.
       | 
       | Good. All I can say is at least it is something different to what
       | I keep seeing on HN. (React, Rust, Kubernetes, JAMstack,
       | JavaScript, etc.)
       | 
       | Probably present this somewhere in a conference (CCC, FOSDEM,
       | etc). Who knows who could be looking at this.
        
         | Causality1 wrote:
         | Don't forget the many ways in which Machine Learning will
         | revolutionize X.
        
         | rubicon33 wrote:
         | Yes, I love seeing this stuff over the standard JavaScript lib
         | of the month.
        
       | atum47 wrote:
       | I never had a relationship with the N64. After the Super Nintendo
       | I was deep into computers and programming. The place I used to go
       | to rent video games also started to rent CD ROMS. I went down
       | there one time to rent a CD ROM and saw the N64. Back then video
       | games stores also worked as an arcade, where you could play a
       | system for 30 minutes paying a small fee. So I decided to try
       | this new system, the N64. The game I choose was Mario 64, or
       | course. I did not know where to go, how to play, what my goals
       | were... I remember back then feeling that I outgrew video games.
       | This was around the year 2000. Wasn't until 2009 that I decided
       | to play with video games again, I bought a used xbox 360 from a
       | friend. I had played Mario Paper 64, but on an emulator, and way
       | after the game was released. Cool project thought, thanks for
       | sharing.
        
         | pizzabearman wrote:
         | This response sounds like it is made from an AI
        
           | atum47 wrote:
           | sorry, When reading the news, if I remember something funny
           | related to the subject I usually share.
        
       | muterad_murilax wrote:
       | Is it possible to use the texture memory/cache (including the
       | Expansion Pak) as additional (albeit limited) system RAM? If so,
       | is that the case here?
        
         | monocasa wrote:
         | Expansion Pak is regular RAM both to this and the normal games.
         | 
         | The texture memory would be difficult to use as RAM though
         | since it's not directly addressable.
        
         | corysama wrote:
         | The expansion pak would double the effective memory from 4MB to
         | 8. But, there is no separate memory for textures to take
         | advantage of. Just a 4k cache that textures were loaded into
         | from main RAM one at a time while rendering.
         | 
         | There were some games that manually implemented their own
         | virtual memory paging system to map the cartridge ROM to RAM
         | address space.
         | 
         | But, in general a feature that distinguished the N64 from the
         | PS1 was that it had a single, unified block of RAM for all of
         | the hardware to share however you like.
        
           | monocasa wrote:
           | TMEM isn't a cache unfortunately and has to be manually
           | loaded and unloaded.
           | 
           | But because of that you might be able to use it for extra
           | sort of like how the Factor 5 GC games would spill out to
           | ARAM.
           | 
           | A lot of work for 4k of RAM though.
        
         | shakna wrote:
         | > This is a port of Linux to the N64. Only native drivers for
         | now, that is, no Everdrive or 64drive specials. Expansion pak
         | required. [0]
         | 
         | It seems that this actually requires using the Expansion Pak as
         | system RAM to even run.
         | 
         | [0] https://github.com/clbr/n64bootloader/tree/master/n64linux
        
       | ajbonkoski wrote:
       | Did the N64 have an MMU? I guess so, COP0. I wouldn't have
       | guessed that.
        
       | j1elo wrote:
       | This, plus the recently announced PlayStation 5 gamepad driver
       | support for Linux. Dreaming is free.
        
         | arwineap wrote:
         | Deja-vu I suppose
         | 
         | https://www.theverge.com/2016/6/22/12008286/sony-ps3-linux-o...
        
       | pram wrote:
       | This completely blows my mind, but also seems a natural fit
       | considering the SGI lineage of the N64. It's like a super budget
       | IRIX workstation ;P
        
       | MegaDeKay wrote:
       | I think something like this is so cool: the relative ease in
       | which Linux can be ported to something combined with a new
       | application for a retro console. His post sums it up.
       | 
       | "But why... Most importantly, because I can."
        
         | MegaDeKay wrote:
         | Replying to my own post but want to give credit where it is
         | due. First saw this on Phoronix.
         | 
         | https://www.phoronix.com/scan.php?page=news_item&px=Nintendo...
        
       ___________________________________________________________________
       (page generated 2020-12-25 23:00 UTC)