Jump to content

EricBall

Members
  • Posts

    2,427
  • Joined

  • Last visited

Everything posted by EricBall

  1. I've been playing through the games and I'm up to R so the end is in sight! 77 games on the "perfect - include" list so far. So now I need to start thinking about what comes next. Double check the games which didn't quite make the cut, in particular any "top 100" entries. For each of the games to be included, check to see if there's a child rom which should be used instead. Create merged sets for the child roms. Remove all of the roms, config files, etc for games which aren't included. My idea for a front end theme is a vertical list of marquees with a game snapshot or attract-mode video for the selected game. I should be able to do this in AttractMode. Migrate from Emulation Station to AttractMode Create & debug the theme Create / obtain resources for the theme The final step will be to create the actual cabinet. The woodworking shouldn't be a problem (measure twice, think, measure again, then cut), but for the control panel I want to top it with a sheet of acrylic (Plexiglass) or polycarbonate (Lexan). And while it is possible to drill through hard plastic, care must be taken or it will crack. The tool of choice is a router with a flush trim bit (need to buy one). In addition to the holes, I also want to bend the sheet over the front. Again, possible in theory, but this is something I've never attempted before. I also need to get the artwork for the control panel created and printed.
  2. Best of luck! The one thing I suggest is to spend as much time as possible planning before spending $$ and also determine your critical path for spending. Nothing worse than a CFO asking about an expensive never-to-be-finished project. Also start small with something you can easily verify success, then start adding complexity. You may want to invest in something like an Arduino or RPi Pico which you can use to validate external HW. Heck, pick up a CoCo off eBay to understand how it works. (Also check out https://colorcomputerarchive.com/repo/Documents/Manuals/Hardware/Color Computer Technical Reference Manual (Tandy).pdf - lots of good info.) You're also going to need some way to program your micro, i.e. a ROM burner. You might also want to check into PALs for address decoding.
  3. Unfortunately the cardboard box didn't really have the strength to hold he monitor in place. But I wasn't ready to build the final cabinet (i.e. spend $$ on materials). Fortunately I was able to build a replacement using a 12x24 shelf cut along the diagonal and some Ikea scraps which were the perfect length. I used some "hockey tape" to decorate the cut edge. (Not sure what I'm going to do on the final version as I don't feel like spending the $$ to buy the slot cutter to use T moulding.) Then I one of the local 'cade shops decided to have a sale, so I picked up a Sanwa joystick for half price along with buttons, a controller & wiring. This past weekend I made a simple control panel out of a scrap piece of 3/4" MDF - both to mount the buttons so I could start using them, but also to test out my woodworking skills for the joystick mount. For the final version I'm planning on having a 1/8" top-cover to hide the mounting plate & buttons. So far it's worked out great except I had planned to use the player buttons to both insert a coin and start the game. Unfortunately some games don't like this configuration, so it looks like I'll need to have a dedicated coin button. I've ordered Logitech S150 USB speakers and they should be showing up this week next month. I lucked out as the cheap "USB powered" speakers I was planning on using still used a headphone jack for audio rather than USB! (This actually turns out to be quite common for "USB speakers".) Before I found the S150 I was worried that I'd have to go to a more costly option. I'm still going through the games. There's a lot of games which are playable, but not at full FPS. While this doesn't impact the gameplay, it also means the RPi doesn't have the CPU power for good audio. I'm also mulling over how to finish the cabinet. While I'd love to get some custom vinyl made, I'm not sure of the cost. Plenty of time to figure that out later!
  4. So I've started playing the vertical games which MAME 0.37b5 supports and I've learned a few things. First, while the Raspberry Pi Zero is incredibly powerful compared to the CPU of the arcade games, it is also having to emulate the graphics and audio processors as well. So while the majority of the games are playable, the game isn't displaying all of the frames and the sound is choppy or worse. The lower fps actually turns out to not be a big deal, but it's difficult to listen to the sound (at least through headphones). Given the huge number of games I can afford to be ruthless pruning down the list. So anything which isn't running at full speed (or has other issues) won't make the first cut. And even if the game does play perfectly it also must be fun to play. There's no point in including games which I won't want to play again. I have flagged the games the "best of" lists on arcade-museum.com (aka KLOV) and the games included on a 60-in-1 vertical multicade. These might be exceptions to the full speed rule. It's also amazing to go through these games and re-discover some while playing others for the first time.
  5. In the words of Sinstar, "Beware, I live" As I mentioned in the previous post, I started over with lr-mame2000 (MAME 0.37b5 as a Libretro core) on RetroPie 4.7.1 (current). While mame4all-pi is supposed to be faster, it doesn't do me any good if it doesn't support rotation. It also became obvious that mame4all-pi is basically an unsupported hack. Once I started over I tried the recommended solution of disabling the internal "soundcard" without success, likely due to the same problem of the USB headset being "card 1" rather than "card 0". I then re-enabled the internal soundcard and instead configured the system so the USB headset was "card 0" - and it worked! So this morning I made a stand out of a cardboard box (~20 degree tilt) and tweaked the libretro config to rotate and fill the screen at native resolution (along with rotating Emulationstation). So now the task is to go through ~450 games to see what's playable and what's worth playing. After that I can focus on setting up the front end.
  6. While researching for whether anyone else had found a solution for my audio issues, I discovered that mame4all doesn't support screen rotation. Bogus! So now I'm going to try to use lr-mame2000 (the same version the MAME core code, but built on top of the Libretro platform) on the current release of RetroPie (4.7.1) - hopefully I won't have as many issues (or it won't be such a headache to resolve them).
  7. My current challenges are with getting the audio working - not something I expected, so it's fortunate I realized I could use the USB headset. I've been working with RetroPie 4.5 as RecalBox is locked down by using a read-only partition. (So I can't rotate Emulation Station.) Audio on Linux is handled by ALSA. It provides a lot of flexibility in order to handle the breadth of soundcards - which means a lot of complexity. Unfortunately, there's not a lot of good, authoritative, current, how-to documentation. ALSA also needs to handle three requirements - first is telling ALSA about the soundcards in the system. Fortunately the automatic detection & configuration is working in this case (although not without a few wrinkles). Second is the ALSA API which applications use. Finally there's the part in between - getting the applications (e.g. mame4all-pi) to actually use the soundcard (USB headset). mame4all-pi uses the "default" PCM "device" (via a hardcoded string). Unfortunately, the automatic configuration lumps both the internal Raspberry Pi soundcard and the USB headset into the "default" PCM "device". Disabling the internal soundcard (via the boot config.txt) still doesn't work because the USB headset is still card 1 (rather than card 0). After much searching, I finally found instructions on how to renumber the two so the USB headset is card 0 and the internal soundcard is card 1. The next problem is mame4all-pi is hardcoded to use 44.1kHz sampling, while my USB headset only supports 48kHz. Fortunately ALSA supports plugins to automatically resample as part of configuring the "default" PCM "device". The next problem is the USB headset doesn't support mono - again fixable via an ALSA plugin. Unfortunately, mame4all-pi is now throwing another ALSA API error...
  8. While I have made some progress, I've also encountered a bunch of frustration. The progress is mostly on the hardware side where I realized I could plug the Raspberry Pi back into the monitor's USB hub with a old USB A to B cable via the USB B jack to micro USB OTG cable. Then I had the second realization I could simply plug in a pair of USB headphones for audio (and use cheap USB speakers in the final build). While the USB speakers won't be as loud as ones powered by the 12V jack on the monitor - I wasn't finding any cheap 12V amplifiers for the RPi. The software, however, has been a mess of frustration. The idea of this project is to rotate the monitor and configure it to play vertical arcade games. You'd think I wouldn't be the first person to have this idea and it would be a simple configuration option. While MAME has the support built-in, neither Lakka nor the front end used by other prebuilt system images (EmulationStation) include this function. Attract-Mode, another front-end available for the RPi, has this function - but it's offered as an add-on to RetroPie rather than as a dedicated system image. The other option is to rotate the display via a configuration option, but I've heard that has a significant performance impact. For the Raspberry Pi there are several prebuilt system images based around the Libretro emulation library: Lakka - uses the RetroArch front-end which looks a lot like the Sony XMB interface. No support (AFAIK) for rotation. Some quirks (e.g. image sets the HDMI option to CEA (TVs) which causes problems with monitors (DMT), conflicts between Colecovision and MSX emulators). Recalbox - uses the EmulationStation front-end which is the typical list + image view. No support (AFAIK) for rotation. Basic image has a 3GB FAT32 partition but only 756MB of data which then causes the initial setup to fail on a 4GB microSD card. Resizing the partition to 800MB works around the problem. On the plus side it includes a bunch of games with non-commercial licenses and has some nice menu music. RetroPie - uses EmulationStation by default, but has the option to install Attract-Mode. MAME4ALL doesn't work on most recent version with non-HDMI audio, okay with older version. Haven't figured out how to get USB audio working. (Although maybe I can get the necessary info from the Recalbox image...) Update - turns out EmulationStation can be rotated via a command line option. Unfortunately Recalbox runs from a read-only filesystem so I can't add it. So my current focus is on getting USB audio working on RetroPie.
  9. There's a saying which goes something like "progress is seldom made in a straight line" - which basically means you can't really anticipate what you need to do until you've started. But if you're wise you'll minimize your losses. For me that means spending time rather than $$, which is why I am forcing myself to work out the software before I spend too much on hardware. Last night I plugged the RPi0w into the monitor (I did buy a mini-HDMI to DVI-D cable as I couldn't assume that would work) and spent a bunch of time trying to figure out why the monitor wouldn't display anything. It turns out Lakka sets the HDMI to CEA (TV timings) rather than DMT (monitor timings). This immediately soured me on continuing to use Lakka (which I had started to set up for emulating various consoles) for testing. This probably wasn't a bad idea as the Lakka front end isn't as configurable, so I almost certainly wasn't going to be using it in the final build. Okay, so back to the drawing board - which system image to use? To make a long story short, I decided to go with RetroPie. It may not be the "best" system image (one of the reasons I was using Lakka is it's minimalist ethos), but it's got decent community support. So if / when I need help I suspect I'll get it. But going through the docs it recommend for RPi0 to use mame4all (0.37b5) rather than lr-mame2003 (0.78). Which mean I need to re-do the work I've done in putting together the vertical collection. Sigh So I've re-imaged the microSD card with RetroPie, now I need to get that working & log in to get the xml / dat file.
  10. Several years ago I rescued a number of old 4:3 LCD monitors my employer was discarding, including several particularly nice 20" 1600x1200 Dell 2007 FP. My plan was to use them to create vertical monitor MAME cabinets. But having learned from past projects, I resisted doing anything on the hardware side until I'd figured out the software side. And then, like many of my projects, that's where it waited. I'd occasionally give the idea some thought, but never really do anything serious. But more recently I've started giving trying to work out a plan. The basic idea is to use a Raspberry Pi Zero as the CPU, powered off the monitor USB ports. The monitor also has a 12V power port which could be used to power speakers - but that's hardware so something for later. From a software side it appears there are a few different front ends which could serve. Basic idea is to select game via a very simple grid which plays attract mode videos. This appears to be doable. But that brings up the question - what games? The current plan is for a minimalist control panel - joystick plus two or three buttons (depending upon what the games require). I already have Lakka on an SD card for my Pi0w which has MAME 0.78 (aka mame2003). So I downloaded the Windows version, generated the XML file and filtered it by vertical monitor and original games. The plan is to then work through that list and try to figure out what works and what doesn't. There are 700 games.... this might take a while...
  11. RF suffers from quality loss (versus composite) not from any issue inherent in RF but because of the modulation (up to 61.25MHz / 67.25MHz & VSB filter) and demodulation (back down from VHF) steps. And you can bet the RF parts in the VCS and most TVs weren't of top quality (which is why you get such an improvement using your studio demodulator). In addition, as you've found, shielding can make a huge difference in signal quality.
  12. This is the result of think exercise to design a 2-D GPU similar to those used by 4th generation consoles (e.g. SNES, Genesis, TG16) but at HDTV resolutions. Rule of thumb is to make it easy to program (i.e. minimum updates), while still being flexible. Output is 1280x720 @ 60fps. For reference, this has a 22.2usec line interval and 30 lines of VBLANK. GPU contains internal 2.5Kbyte RAM for two 1280 x 8 bit line buffers (one is written while the other is read), reset to $00 at start of line. GPU contains a single 256 x 24 bit CLUT (16 palettes of 16 colors, 24 bit RGB). GPU is connected to 1Mbyte 10ns RAM addressed as 8192 pages of 64 x 16bit words. (Note: for sanity all data is little-endian, so bit 0 of byte 0 is bit 0 of word 0.) GPU RAM is copied by DMA during VBLANK (up to 1024 pages per frame). Page $0000 is typically set to all $0000. DMA to pages $1FF8 - $1FFF also updates GPU registers / CLUT. GPU registers: $1FF8 [0..47] CLUT [0..31] stored in packed format $1FF8 [48..51] layer register [0..3] $1FF8 [52..63] not used $1FF9 [0..47] CLUT [32..63] $1FF9 [48..55] offset register [0..7] $1FF9 [56..63] not used $1FFA-F [0..47] CLUT [64..255] (32 entries per page) $1FFA-F [48..63] not used layer register [0..12] Zone list starting page number [13] not used [14] color 0 is 0=transparent, 1=opaque (taken from CLUT by palette) [15] zone type is 0=sprite, 1=tile offset register [0..7] signed Y position offset [8..15] signed X position offset Rather than have a single table of sprite positions etc, the GPU has 4 independent layers. Each layer is described by a list of zone entries. Each zone entry points to a list of tiles or sprites for 1 to 16 lines. While this is more complex from a game programming perspective, it adds significantly more flexibility and dramatically increases the number of sprites the GPU can display. The offset register is used to shift the position of multiple sprites by the same amount. A single sprite / tile graphics block is 16 x 16 pixels and 4 bits per pixel, which is exactly 64 x 16 bit words = 1 page. Color 0 is either transparent or opaque depending upon the layer register. Pixels are stored in little endian raster order (i.e. bits 0..3 are top left pixel). Tile Zone entry (48 bits / 3 words each, list may extend over multiple pages) [0][0..11] Tile List page number [0][12..15] 16 - number of lines in zone [1][0..11] tile graphics block offset [1][12..15] start line [2][0..3] start pixel [2][4..9] start tile (word offset of first tile in Tile List page) Tile List entry (16 bits / 1 word each, list may extend over multiple pages) [0..11] graphics block index (added to graphics block offset to give page number) [12..15] palette If number of lines in zone + start line > 16 then next graphics block will also be read. Sprite Zone entry (32 bits / 2 words each, list may extend over multiple pages) [0][0..11] Sprite List page number [0][12..15] 16 - number of lines in zone [1][0..11] sprite graphics block offset [1][12..15] not used Sprite List Entry (48 bits / 3 words each, 21 entries = 1 page) [0][0..9] y position (0 - 1023 w/ wrap around 1023->0, 0 - 719 onscreen) [0][10..12] offset register number [0][13..14] y size - 1 (16,32,48 or 64 pixels high) [0][15] y flip [1][0..10] x position (0 - 2047 w/ wrap around 2047->0, 0 - 1279 onscreen) [1][11..12] not used [1][13..14] x size - 1 (16,32,48 or 64 pixels wide) [1][15] x flip [2][0..11] graphics block index (added to graphics block offset to give page number) [2][12..15] palette Graphics blocks for sprites larger than 16x16 are addressed sequentially in raster order
  13. One side effect of trying to install SteamOS is realizing doing the base install & updates while hardwired is a pretty good idea. However, I did take the advice of JayZ and disconnect the PC from the network for the initial install to avoid having the Admin user tied to an email address. I've also created individual normal users for each member of the family. The actual Windows 10 install & update went smoothly. Then came the big test - I installed Steam, CS:GO and did the timedemo. Unfortunately with the default "high" settings I didn't hit my desired 1440@144 target (although I did get over 120Hz, and significantly better than the sub-60Hz I got on the iMac at low settings. The bottleneck appears to be the graphics card as it's pegged to 100% and none of the CPU cores are. On the one hand I'm disappointed with the result - although it's not like I had any real reason to expect it would meet my target out of the box. Rather than throwing money at the problem and spending hundreds more to get higher performance I went with the CPU & graphics card with the "best bang for the buck" - which means both cheaper and lower performance. But I am kicking myself for not going with the GeForce GTX 1660 Super. But I've done some more testing and I can get over 170Hz by dropping the quality settings, so now I just need to decide which is more important - pretty or fps, and see which settings get me the most fps for the least visual impact. And it's not like it's difficult to upgrade the graphics card if I decide in 6 months I really want to spend the $$. Now begins the long process of setting up the various programs I want to use on the new PC, configuring them to work the way I want, and consolidating the files from the iMac and my work laptop.
  14. I've bought a new primary computer to replace the current one - a late 2013 27" iMac. The iMac has been a great computer and for the most part not being able to use it to run Windows apps has been offset by being able to run MacOS apps. Plus it gave me the opportunity to develop an iOS app. And it has a really nice 27" 2560x1440 screen. The problem is games. I've been playing CS:GO's Danger Zone mode and putting up videos on YouTube for over a year and have been getting comments on my low frame rate for just as long. The obvious solution is to buy a new computer. The problem with the solution is justifying paying C$2K just so I can play a game at a higher frame rate. But now that my son is home from college, I can validly say that he can use it to continue his game art endeavours. My objective was to assemble a computer which could run Danger Zone at 1440@144 (equivalent to 1080@256). Unfortunately specific performance numbers are hard to come by, so I'm not sure whether it will achieve that objective. In addition, I'm thrifty - so I was reluctant to just throw money at the problem and tried to weigh incremental price vs incremental performance. (Costs given in Canadian dollars and include shipping and taxes.) C$303.97 AMD Ryzen 5 3600 I really started dreaming about a new PC with the Zen 2 processor benchmarks - a high performance CPU at budget prices. This was a processor I could build a decent system around. It benchmarks at over 2.6 times the speed of the Intel 4771 in the iMac (18% faster in single thread), which I am hoping is enough for CS:GO that tends to be CPU bound and only really uses 4 cores. And while I originally dreamed of the Ryzn 7 3700x, that's $200 more for 1/3 more cores but only 28% higher performance (and only 5% more in single thread). I'm going to stick with the stock cooler unless it's too noisy. C$258.77 GeForce 1650 Super I went with the GeForce 1650 Super because it supports NVENC v6 - for making YouTube videos. It benchmarks at 2.5x the GeForce 780M in the iMac. However, I probably should have gotten the GeForce 1660 Super for 28% higher performance for only $100 more. C$134.18 MSI B450M Gaming Plus Motherboard I went with the B450 over the X570 because I didn't see the point of paying substantially more for PCIe 4.0. I went with MSI because, if necessary, I could flash the BIOS to support Zen-2 without a CPU. The Gaming Plus motherboard had all of the features I needed without a lot of features I wouldn't be using. (In addition, I noticed a lot of motherboards which had more slots etc also had cross restrictions on which could be used.) However, this particular motherboard was difficult to find and I had to drive 150 miles round trip to pick it up. I probably should have reviewed what was available the current market rather than sticking with the decision I made 6 months ago. (Note: I learned the B450 won't be supporting the Zen-3 after I bought the motherboard, although I'm not certain it would have changed my decision as I am not likely to upgrade my CPU that soon.) Note: I've also learned there are multiple "Gaming Plus" motherboard models from MSI. I lucked out and got the one I assumed I was getting. C$205.50 32GB DDR4 3200 I bought the cheapest RAM available from newegg.ca when I ordered, although I did spend $10 extra to get the 3200 speed instead of the standard speed. C$214.68 Intel 660p 1TB M.2 PCIe NVMe SSD It's strange to think how much storage this is; and it's both smaller and faster than a normal SATA SSD. I paid a little extra for Intel because they have historically made very good controllers. C$100 Thermaltake Core V21 case I went with this case first because I'm a traditionalist - I like my motherboard horizontal so the graphics card & CPU cooler aren't putting strain on the motherboard. I also find the cube look to be attractive. It also has a massive 200mm intake fan behind the vented front panel, so I shouldn't need any other cooling. I decided to put the windowed panel on the top and the vented panels on the side because, although having a vented panel on the top would probably better for cooling, it would be worse if one of the cats decided to sit or sleep on it. It's also kinda cool to look down into the case. As this is an older case I was able to buy it second hand, although it meant a 80 mile round trip drive to pick it up. C$67.79 Enermax 500W Gold Revolution Duo This was the cheapest 500W gold rated power supply from a brand I recognized. (500W is certainly overkill, but I didn't see the logic to try to get "just enough" and risking "not enough".) For some reason it was in a velveteen bag in the box. The cables are nicely sleeved, although not detachable, and it includes a couple velcro straps. C$101.69 TP-Link TX3000E I new I wanted a PCIe WiFi adapter with external antennas and this one was competitively priced. While I don't have an AX3000 router, I figured having the adapter support the latest and greatest WiFi standards should mean it will get the best results from my last-gen router. C$564.99 ASUS VQ27BQ As I've said, one of the best features of the iMac is the monitor and there wasn't any way I was going to downgrade for the new computer. In addition to being 27", 2560x1440 and capable of 144Hz (or better) it had to support G-Sync (so if the computer wasn't capable of hitting 1440@144 I'd at least get the same framerate as fps). Fortunately, Nvidia has enhanced their drivers to be compatible with many Freesync monitors - which are significantly cheaper than G-Sync monitors as they don't have the proprietary chips required for G-Sync. I was going to get the Acer XG270HU as it is slightly cheaper, but it was in short supply and I was able to pick up the ASUS (which has better specs) open box for the same price. One challenge is I purchased some of these components online so I needed to wait for them to be delivered, which was even more frustrating due to the 15 day return policy on the components I picked up. C$213.57 Microsoft Windows 10 Home When first I looked at the Microsoft website I thought "USB" meant you'd download the installer to a USB (and receive the activation code electronically), so I didn't bother buying it until all of the components arrived. Imagine my surprise when I learned it meant Microsoft was shipping me a USB via FedEx! (There might be a download version, I didn't check since I'd already paid.) But then I realized I could download SteamOS and use it while I waited for the delivery. Once I got the components, assembly went fairly smoothly - although not without a few frustrating moments. Why does the AMD stock cooler not use the (presumably) standard motherboard mounts? The case includes a bracket for the power supply but it's difficult to install so I left it off. Getting the motherboard and I/O shield mounted was annoying. I ended up putting the I/O plate on the motherboard and then putting the two into position in the case as the grounding tabs on the I/O shield made it impossible to do it otherwise. Then I had to push the motherboard into position to get the mounting holes to line up and hold it there while I screwed it in. A dual slot graphics card (which is the norm these days) covers the slot to the right (looking from the rear) of the PCIe x16 slot. Fortunately my motherboard has two PCIe x1 slots (both to the right of the PCIe x16 slot) so I had an open slot for the WiFi card. (I'd assumed the graphics card would extend to the left, over the M.2 card.) Of course when I first powered on the PC all I got from the monitor was "no signal". Immediately I started to wonder if I'd bent some pins on the CPU because I'd dropped it onto the socket (forgetting to open the retention clip first to boot). But before taking things apart I decided to see what I could troubleshoot first. So I connected a laptop to the monitor via the HDMI cable - that worked. So I swapped the Display Port cable I had used (required for G-Sync) with the HDMI connection and was greeted with the BIOS menu. Hooray! However, the SteamOS install wasn't successful When the install first started it presented a warning message about UEFI vs BIOS which had me spending a bunch of time trying to get GPartEd to run (eventually just dropped to command line and used parted) to try and see if there was anything pre-installed on the SSD which I might want to keep. (Nope) After going through the primary install it very unhelpfully popped up a window saying it can't connect to the network (no duh) and I needed to configure my WiFi (double no duh), but just dumping me into the GNOME desktop with no hints about what needed to be done. After many, many frustrating attempt to try to configure the network (during which it keeps popping up the "no network" message), I found a how-to online which showed I needed to click on the WiFi adapter in the Network Device Manager (or some such). Except I didn't have a WiFi adapter listed in the Network Device Manager. I guess SteamOS doesn't include the Linux device driver for my next-gen adapter. In the morning (while everyone else was sleeping in) I dragged the computer over to the living room and plugged it directly into the router (and the TV instead of the monitor) and let it finish the install. Or tried to. At some point it got caught in an infinite loop of "encountered a fatal problem attempting to correct... <reboot>: Figuring something had gone wrong, I tried to reinstall, then had to use parted to clear the partitions, then go through the reinstall process to... same problem. After a shower I realized I was wasting my time on something which was going to be temporary anyway. I would have liked to have seen how CS:GO under SteamOS performed, but it wasn't worth the time, effort and frustration.
  15. When dealing with audio and video files it's important to understand the differences between the container format and the codec. Confusion often arises because the filename extension typically indicates the container (e.g. WAV, AVI, MOV, MKV, OGG, MP4) but most container formats can handle a wide variety of codecs (e.g. H.264, MPEG2). People who don't understand this will complain they can't play a particular WAV or AVI file, not understanding that their player doesn't have a decoder for the codec. According to Wikipedia, WMV files are generally one of the Windows Media Video codecs in an ASF container. In addition WMV 9 was standardized as VC-1. So depending upon the codec used for your WMV files, HandBrake could have just put the exact same compressed data into an MP4 container. However, looking at episode 1, it appears it's been transcoded to H.264, but probably at a high enough bit rate that the video is visually indistinguishable from the original. As to why WMV is obsolete - it was a proprietary format. Typically proprietary formats always lose to more open formats.
  16. Just a note to anyone looking at my sprite data to color mapping post, I really recommend you look at the spreadsheet as it makes it much easier to see how the bit patterns match the the different colors. (And hopefully allow you to avoid making bad assumptions when designing sprites.) Also for anyone thinking about using the 320 modes, don't forget that large luma changes between pixels will cause false colors on real hardware (e.g Tower Toppler).
  17. Sounds like quite the challenge, although I have to wonder what you are planning on using it for. It's not like you're going to implement the standard C libraries on the 2600. For me, I'd start with what problem I'm trying to solve and then build up something from there.
  18. Thanks for the nod. Yeah, the TIA audio generator is pretty limited in what it can create, so trying to use it to duplicate any normal audio is fraught with challenges. That's one of the reasons I went with the brute force correlation rather than something like the FFT. (Also given an FFT is just a way of calculating a Discrete Fourier Transform - which is essentially a correlation matrix between the input and the set of sine and cosine waves, I figured I could use the raw TIA waveforms to create a similar correlation matrix.) Hmm... I wonder if what is required is to find the "closest" TIA waveform - so rather than looking for an exact match / correlation, instead somehow have each TIA waveform represent a range of frequencies.
  19. The way I read https://support.google.com/youtube/answer/9528076?hl=en&ref_topic=9257782 is "is the video specifically targeted at minors", not "is this video only for those over the age of majority". So unless you're specifically targeting kids (or otherwise need to be on the "YouTube for Kids" area), the answer is no.
  20. Personally I enjoyed Ep1 more than Ep2 and Ep3. I think the good / great scenes in the second two weren't enough to balance out their bad scenes. Both are also deep into the Anakin storyline, so both films are more focused on him and Padme with more weak writing and bland acting.
  21. I did a similar binge before going to see Episode 8. I remember seeing Episode 1 on opening night and enjoying it - and returning for several more theater viewings. I still enjoy Episode 1 as I find the good parts (Darth Maul, the pod race, the battle scenes, landscape shots) are still very, very good. I never was a Jar-Jar hater, so his goofy manner doesn't bother me, and it's interesting to watch his character develop - knowing what he later sets in motion. I also loved Palpatine and how he clearly was pulling the strings to ensure he came out ahead no matter what happened. This is where the Republic starts to fall. OTOH where the prequel trilogy falls down IMHO is in trying to do what it was supposed to do - explain the origin of the Skywalkers. Unlike Rogue One, which turned a single line into a coherent movie which was consistent with the other movies, the prequels managed to ruin some of the mythos and introduce contradictions with the original trilogy. I understand it is very difficult to write a prequel, but George had over a decade to do so.
  22. My problem with buying a new console is I already have numerous devices and a library of games to play on them (and more available at low or no cost). I will say that # 3 shouldn't be a deal breaker unless you live somewhere where internet is expensive or unavailable. The question is whether the game can be played offline.
  23. Yep, depending upon how you are counting lines that will do it.
  24. Yeah, the "no 32bit" is a non-starter for my 27" iMac. In particular the drivers for my Dell Laser printer / scanner / copier. For EyeTV I suspect the video files could be played back via VLC or similar - but that's not much value without the metadata. I learned at one point to try to avoid recording shows which followed sporting events and try to find an alternate timeslot or channel.
×
×
  • Create New...