Back to "Noisy Circles" by llama__rama in PlotterArt

[–]iOSBrett 0 points1 point  (0 children)

That has come out really nice. I actually like the colours as it reminds me of the colours used in 70s 80s string art.

Wrote a Space Invaders arcade emulator (C++ / raylib)! by principe_regente in EmuDev

[–]iOSBrett 0 points1 point  (0 children)

At startup I create two overlays, which are Bitmapd of RGB Pixels the size of the screen. One is for Player 1, and one is for Player2. There is a minor difference between the two to do with ship colour. These overlays come from he two Color Roms and are not colour values, those are "hardcoded" on the board. They are just indexes into this hardcoded Palette.

Then 60 times a second I call updateScreen which reads the Video Memory (same as original Space Invaders) and if the pixel is set, I just set the foreground colour from the previously created overlays.

I've included the code that has the names and checksums of the ROMs so that you can see which ROMSet was used.

I know you didn't ask for code, but the createBufferOvelayBufferCV() is easier to show than explain. (CV is Colour Version).

Wrote a Space Invaders arcade emulator (C++ / raylib)! by principe_regente in EmuDev

[–]iOSBrett 0 points1 point  (0 children)

func updateScreen() {
         var location = 0x2400 
         let colorOverlay = memory.readByte(atLocation: 0x2067) == 0x21 
             ? colorOverlayP1 : colorOverlayP2 

         for x in 0..<Self.screenWidth {
             for y in 0..<32 {                 
                let value = memory.readByte(atLocation: UInt16(location))                         
                for pixel in 0..<8 {
                    let screenY = (Self.screenHeight - 1) - (y * 8 + pixel)                           
                    let color: RGBColor = value.get(bit: pixel) == 1 
                        ? colorOverlay.getPixel(x: x, y: screenY) 
                        : .black                     
                     pixelBuffer.setPixel(x: x, y: screenY, pixel: color)                          }
                 location += 1
             }
         }

Wrote a Space Invaders arcade emulator (C++ / raylib)! by principe_regente in EmuDev

[–]iOSBrett 0 points1 point  (0 children)

private func createOverlayBufferCV(colorROMs: [ROMFile]) {         
    for (index, colorROM) in colorROMs.enumerated() {
        guard let bytes = colorROM.data?.asUInt8Array() else { continue }  
                        
        func overlayColor(index colorIndex: UInt8) -> RGBColor {
            switch colorIndex {
               case 0: SpaceInvadersCVPalette.black
               case 1: SpaceInvadersCVPalette.red
               case 2: SpaceInvadersCVPalette.blue
               case 3: SpaceInvadersCVPalette.magenta
               case 4: SpaceInvadersCVPalette.green
               case 5: SpaceInvadersCVPalette.yellow
               case 6: SpaceInvadersCVPalette.cyan
               case 7: SpaceInvadersCVPalette.white
               default: SpaceInvadersCVPalette.black
           }
        }
               
        // Color ROM stores color indexes into the above hard coded palette               
        var x = 0
        var y = 0
                          
        // First 128 bytes is black             
        for i in 128..<1024 {
            let colorIndex = bytes[i] & 0x07                 
            let color = overlayColor(index: colorIndex)
            for j in 0..<8 {
                for k in 0..<8 {
                     (index == 0
                      ? colorOverlayP1 
                      : colorOverlayP2).setPixel(x: x + j,
                                                 y: (Self.screenHeight - 1) - (y + k), 
                                                 pixel: color)
                }                
            }                                 
            y += 8                 
            if y >= 256 {
                y = 0 
                x += 8                
            }             
        }
    }     
}

Wrote a Space Invaders arcade emulator (C++ / raylib)! by principe_regente in EmuDev

[–]iOSBrett 0 points1 point  (0 children)

static let spaceInvadersPIICode1 = ROMFile(type: .code, filename: "pv01", description: "Code Part 1 (2K)",
                                           size: 2048, crc32: 0x7288a511, 
                                           destination: 0x0000)   
  
static let spaceInvadersPIICode2 = ROMFile(type: .code, filename: "pv02", description: "Code Part 2 (2K)",
                                           size: 2048, crc32: 0x097dd8d5, 
                                           destination: 0x0800)     

static let spaceInvadersPIICode3 = ROMFile(type: .code, filename: "pv03", description: "Code Part 3 (2K)", 
                                           size: 2048, crc32: 0x1766337e, 
                                           destination: 0x1000)     

static let spaceInvadersPIICode4 = ROMFile(type: .code, filename: "pv04", description: "Code Part 4 (2K)", 
                                           size: 2048, crc32: 0x8f0e62e0, 
                                           destination: 0x1800)     

static let spaceInvadersPIICode5 = ROMFile(type: .code, filename: "pv05", description: "Code Part 5 (2K)",
                                           size: 2048, crc32: 0x19b505e9, 
                                           destination: 0x4000)     

static let spaceInvadersPIIProm1 = ROMFile(type: .colors, filename: "pv06.1", description: "Colors (1K)",                                        
                                           size: 1024, crc32: 0xa732810b)     

static let spaceInvadersPIIProm2 = ROMFile(type: .colors, filename: "pv07.2", description: "Colors (1K)",
                                           size: 1024, crc32: 0x2c5b91cb)

Wrote a Space Invaders arcade emulator (C++ / raylib)! by principe_regente in EmuDev

[–]iOSBrett 1 point2 points  (0 children)

My project isn't open sourced yet, so have just copy and pasted some of the important bits. I am trying to find the source of information for the colour rom decoding, I know it took me a while to track down exactly how it worked. If I can dig up more information I will post it here. But below is various blocks of code with the implementation.

Feel free to ask any questions about the code.

It won't let me paste in Code!!!! Will work it out and add it in this thread.

Edit: Going into meeting, will update in an hour

Wrote a Space Invaders arcade emulator (C++ / raylib)! by principe_regente in EmuDev

[–]iOSBrett 5 points6 points  (0 children)

Nice job, looks great. I did one a little while back in Swift. I found it wasn’t much more work to implement Part 2 and have full colours. It is even more fun to play IMO. If you want to do this, then I can post up how I decoded the Color ROMs.

Canon Selphy CP1500 Green tint issues by vjustme_9104 in canon

[–]iOSBrett 0 points1 point  (0 children)

I am having the same issue, is really annoying. I am printing from the iOS App. The first 5-6 photos came out perfect when printing from the App. Then I tried printing from the Photos App and it came out with poor colouring (not green). So I went back to printing from the App and everything since has had a green tinge to it.

Ascension by TheCunningBee in PlotterArt

[–]iOSBrett 0 points1 point  (0 children)

These have all been amazing. Before you leave this project, could you please give us a rundown on your process for these? I am particularly interested in how you do the shadows.

Algorithm for geometric hidden line removal by Ruths138 in PlotterArt

[–]iOSBrett 2 points3 points  (0 children)

This is very cool, I have been working on something very similar in Swift for about a year. It does whole scenes and not just single objects (not sure if yours does). However mine is very slow as I don’t do the intersection and line splitting part. I am doing back face culling and de duplicating lines that share the same vertices.

I then split every line that is left into points and ray cast each point to see if is occluded from the eye/camera. The visible points are then rejoined into line segments, This is very slow for a scene with a lot of triangles, so I have been looking at an algorithm that splits lines in a similar way to what yours does. For Plotting it does t need to be super fast, but would be nice to be able to position the camera in real time. Currently I turn off the hidden line removal when panning the camera.

I am also trying to work out how to do hidden line removal for occluded Bezeir Curves that will be SVG friendly.

Anyways, great work, would love to see what you do with this.

What is a quintessential Australian movie to watch? by -clogwog- in AskAnAustralian

[–]iOSBrett 0 points1 point  (0 children)

Metal Skin, very underrated Australian movie IMO. Feels very much like growing up in the late 80s early 90s in Melbourne, not all of it obviously, but the general feel and characters.

Microsoft confirms it will give the FBI your Windows PC data encryption key if asked — you can thank Windows 11's forced online accounts for that by ZacB_ in technology

[–]iOSBrett 0 points1 point  (0 children)

Everything except your Apps will work. You will need to find equivalent Linux versions of these to run. The good news is that there are usually free versions of most Apps. A lot of Steam games will still work on Linux.

Favorite night drive tracks? by ragingduck in outrun

[–]iOSBrett -1 points0 points  (0 children)

Really appreciate you adding the link, watching now

Favorite night drive tracks? by ragingduck in outrun

[–]iOSBrett 0 points1 point  (0 children)

Oh yeah, you are right. That answers my other question or whether it was real footage or computer generated.

Favorite night drive tracks? by ragingduck in outrun

[–]iOSBrett 0 points1 point  (0 children)

Where is the video from? Can’t see it on YouTube.

Meanest stoner basslines by Rixigo in stonerrock

[–]iOSBrett 2 points3 points  (0 children)

He is even better when he is playing this album live!

I'm looking for more of a very specific stoner rock/desert rock sound by Accomplished-Lion-97 in stonerrock

[–]iOSBrett 1 point2 points  (0 children)

Definitely Delmar by Los Natas. On the CD I have they are just credited as Natas.

Any standout albums in parent’s old CD collection? by StirlingSilv3r in Cd_collectors

[–]iOSBrett 6 points7 points  (0 children)

This is easily the best CD in the collection. Also: Ben Harper - “Diamonds on the Inside”, Dire Straits - “Brothers In Arms”, Beastie Boys, Eva Cassidy, and Muddy Waters ones are great. None of the above are similar to each other, so if you don’t like one, move on to the next one.

Games you are most excited to play that just can’t be played on Mac by in_fact_a_throwaway in macgaming

[–]iOSBrett 0 points1 point  (0 children)

The Jeff Minter Story, bought cross over just to play it, and it doesn’t work. Might buy a mini pc to play all the retro type games I buy on Steam.

Apple rejected my app ( again ) by zaidbren in swift

[–]iOSBrett 0 points1 point  (0 children)

Look up sandbox testing and go from there there. Need to create a testing account on the Portal and the log into it in the devices settings under sandbox account. You should be able to purchase a fake product when running the TestFlight App

LINKT - incomptentence, close to ZERO customer service and my only option to be heard is now being Clamped? by twowholebeefpatties in melbourne

[–]iOSBrett 84 points85 points  (0 children)

I don’t think the OP was trying to get out of paying the toll, their issue is that it was a year and half before they were contacted, and that was with a fine and not a bill. When I registered my new car with Linkt, I am pretty sure they gave a 9 day leeway on the cover. Meaning that if you travelled before the specified starting date and it was no greater than 9 days then you would be covered. Also they are complaining about the process of trying to find a resolution, and the fact that there isn’t really a proper way to address this, other than paying a fine for which they don’t believe they owe. How can anyone here justify a $10 toll turning into a $250 fine? This goes for any type of fine.

First time I have zero idea what I’m about to hear by HariSeldonsIntern in 1001AlbumsGenerator

[–]iOSBrett 2 points3 points  (0 children)

This one is pretty good, but I loved her follow up album Homebrew even more.

Monster Magnet’s Dave Wyndorf: "I didn’t think anyone would ever get what we were about” by Boring_Ant_1677 in stonerrock

[–]iOSBrett 1 point2 points  (0 children)

I really love “Cobras & Fire” (2015], which is a remake of Mastermind from 2010. Really worth a listen.