Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / [STICKY] The Posting Competition

Author
Message
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 20th Nov 2015 16:39 Edited at: 20th Nov 2015 16:40
page!͘
\"Windows 10 doesn\'t only include spyware, it is designed as spyware\" -- Gaius Publius, The Big Picture RT Interview
\"[...] we will access, disclose and preserve personal data, including your content (such as the content of your emails, other private communications or files in private folders), when we have a good faith belief that doing so is necessary\" -- Windows 10 Privacy Statement
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 20th Nov 2015 21:11
I hate SQL
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 20th Nov 2015 21:30
I like MSSQL or more precisely T-SQL... well for now...

I have some great news... I am within a hairs reach of one of my dream jobs this weekend

In other news, picked up the keys to our new house today

Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 20th Nov 2015 21:37
It's not really the usage of SQL, it's more how to implement it.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 20th Nov 2015 21:40
Where are you struggling? MySQL with PHP or with some coding language?

I am more .NET based... and still not experimented much yet with SQL...
Dark Java Dude 64
Community Leader
13
Years of Service
User Offline
Joined: 21st Sep 2010
Location: Neither here nor there nor anywhere
Posted: 20th Nov 2015 22:17 Edited at: 20th Nov 2015 22:18
You can still claim it if you want to.

EDIT

K wow I'm late, that's what I get for not checking if a new page has been created before I post.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 21st Nov 2015 00:19
LOL
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 21st Nov 2015 04:57
Quote: " Where are you struggling? MySQL with PHP or with some coding language?"

I'm not using SQL with any particular DBMS, I'm building a DBMS. So I'm struggling with implementing the standard in C++ rather than just using it in PHP or JS. Basically, I'm making the software that runs your SQL query and gives you the data.

In other news, my girlfriend broke up with me today. Took it better than I thought I would, but still sucks.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 21st Nov 2015 05:01
Well, there should be a book or two about that...
Yodaman Jer
User Banned
Posted: 21st Nov 2015 17:24
Dar13 wrote: "In other news, my girlfriend broke up with me today. Took it better than I thought I would, but still sucks."


Ouch, been there done that. My previous gf completely ended it out of the blue, and to this day I still don't know why. We were together for just over 3 years and one day she came over and said "we need to talk". I was utterly devastated but now I see that it all worked out for the better. For example, I found someone else who is a wonderful person and she loves me for who I am instead of who she wants me to be. She's also extremely supportive in everything that I do and want to do.

So, while it sucks now, there's always hope you'll find someone who is better, and loves you for you.

------

Unrelated, but is anyone else afraid that ISIS is going to be the official cause for World War III? I mean, I guess technically we are already in the midst of WWIII without being officially called that, but I'm seriously afraid we're about to see a lot of massive wars and such because of them.

Forum President until June 20th, 2016.
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 21st Nov 2015 19:32
Quote: " Well, there should be a book or two about that..."

Yeah that book is the ISO SQL standard. 1500+ pages of awesome technical jibberish.

Quote: "So, while it sucks now, there's always hope you'll find someone who is better, and loves you for you. "

Thank you. I'll definitely keep this in mind.

MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 21st Nov 2015 19:55
Quote: "1500+ pages of awesome technical jibberish."


That is a small book...

So changed the locks on the new den today ... tomorrow is a big day and looks like I might be too busy in the coming weeks leading up to the new year... that is if I get the job

Anybody else moving lately? quite a few members on here moved in the past few years...

'Baking' might be on the books next
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 21st Nov 2015 20:40
Quote: " That is a small book..."

If you say so. I don't think it is, especially when it's as dense as this one. Maybe you're just a genius MrValentine.
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 21st Nov 2015 21:33

\"Windows 10 doesn\'t only include spyware, it is designed as spyware\" -- Gaius Publius, The Big Picture RT Interview
\"[...] we will access, disclose and preserve personal data, including your content (such as the content of your emails, other private communications or files in private folders), when we have a good faith belief that doing so is necessary\" -- Windows 10 Privacy Statement
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 21st Nov 2015 21:38
Quote: "Maybe you're just a genius MrValentine. "


Nope, just very determined through this year, most books completed were between 400 and 1000 pages, the next major read is 1471 pages... just takes a short number of days to complete such large books... not months... pick a speed and stick by it each day.
The Zoq2
14
Years of Service
User Offline
Joined: 4th Nov 2009
Location: Linköping, Sweden
Posted: 22nd Nov 2015 00:55
Quote: "Unrelated, but is anyone else afraid that ISIS is going to be the official cause for World War III? I mean, I guess technically we are already in the midst of WWIII without being officially called that, but I'm seriously afraid we're about to see a lot of massive wars and such because of them."


ISIS are scary but to me it seems like almost all other countries hates them which probably won't make for a good world war since everyone is allied against them
Say ONE stupid thing and it ends up as a forum signature forever. - Neuro Fuzzy
Dark Java Dude 64
Community Leader
13
Years of Service
User Offline
Joined: 21st Sep 2010
Location: Neither here nor there nor anywhere
Posted: 22nd Nov 2015 04:08
Quote: "That is a small book..."
Only by your standards bro.

Quote: "SIS are scary but to me it seems like almost all other countries hates them which probably won't make for a good world war since everyone is allied against them"
My thoughts exactly. Unless like, Russia and the US suddenly have disagreement on how to handle ISIS.
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 22nd Nov 2015 15:10
When I'm done with ISIS they'll be WASWAS
\"Windows 10 doesn\'t only include spyware, it is designed as spyware\" -- Gaius Publius, The Big Picture RT Interview
\"[...] we will access, disclose and preserve personal data, including your content (such as the content of your emails, other private communications or files in private folders), when we have a good faith belief that doing so is necessary\" -- Windows 10 Privacy Statement
Yodaman Jer
User Banned
Posted: 22nd Nov 2015 15:29
So, because the Unity community is apparently unable to answer basic questions (on both the answer hub and forums), I've decided to give Unreal Engine another whirl.

Wow, 4.10 is AMAZING - many of the things I found annoying with 4.2-4.7 annoying have been fixed. Blueprints are easier to organize, and now it's possible to cast to various Blueprints, so you can easily create Game State Managers in Blueprints and anything else you can think of, like a switch that controls elevators, doors or lights.

The engine itself runs a lot more smoothly too.

Yup. Sticking with Unreal for now!

Forum President until June 20th, 2016.
Randomness 128
17
Years of Service
User Offline
Joined: 13th Feb 2007
Location:
Posted: 22nd Nov 2015 16:21
@Yodaman Jer

Pfffft! Don't bother with engines at all. Just type machine code in a hex editor.
320x224
Yodaman Jer
User Banned
Posted: 22nd Nov 2015 16:38
Random Dude 812 wrote: " Just type machine code in a hex editor."


I would, but I'd rather not be hexually active until marriage.

Forum President until June 20th, 2016.
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 22nd Nov 2015 17:09 Edited at: 22nd Nov 2015 17:09
Quote: "I would, but I'd rather not be hexually active until marriage. "


There are two places where you can put your hex code, you know.
\"Windows 10 doesn\'t only include spyware, it is designed as spyware\" -- Gaius Publius, The Big Picture RT Interview
\"[...] we will access, disclose and preserve personal data, including your content (such as the content of your emails, other private communications or files in private folders), when we have a good faith belief that doing so is necessary\" -- Windows 10 Privacy Statement
Dark Java Dude 64
Community Leader
13
Years of Service
User Offline
Joined: 21st Sep 2010
Location: Neither here nor there nor anywhere
Posted: 22nd Nov 2015 17:40
Best conversation this thread has seen in a while.
Yodaman Jer
User Banned
Posted: 22nd Nov 2015 17:46
The Space Rock wrote: "There are two places where you can put your hex code"


...STEVE doesn't approve


Darkbasic dude 79 wrote: "Best conversation this thread has seen in a while."


It's practically the only conversation this thread has seen in a while


Forum President until June 20th, 2016.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 22nd Nov 2015 19:25
So it appears I have the job in the bag

New house is so damn lovely

Why not just code in Binary....... you just need 2 keys...
TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 22nd Nov 2015 23:49





\"Windows 10 doesn\'t only include spyware, it is designed as spyware\" -- Gaius Publius, The Big Picture RT Interview
\"[...] we will access, disclose and preserve personal data, including your content (such as the content of your emails, other private communications or files in private folders), when we have a good faith belief that doing so is necessary\" -- Windows 10 Privacy Statement
Yodaman Jer
User Banned
Posted: 23rd Nov 2015 01:37
Ooooh wonderful Schnucks just cheated me out of my insurance coverage for next year!

I received documents at the end of my shift tonight which said that the enrollment date for coverage for next year was November 19th. Now, for those of you who can't do math very well, that was just shy of four days ago. I received no such documents at my shift and as far as I know neither did any of my coworkers.

I'm gonna storm into the corporate offices and demand a refund for insurance for the last year Eh if only, right?

Forum President until June 20th, 2016.
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 23rd Nov 2015 01:43
Quote: " Ooooh wonderful Schnucks just cheated me out of my insurance coverage for next year!"

That sucks man. That's a heck of an either shady company or a disfunctional one.
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 23rd Nov 2015 04:42
Yoyoyo Clonkex is BACK bitc- err... boyz!!

Did anyone notice my absence? What am I saying of course you did.

Random crap:

- DBPro source is officially released: https://forum.thegamecreators.com/thread/215409?page=2#msg2573466
- I got a UPS for Christmas (well half of it - Mum and Dad can't spend $220 on each of us) because the bore pump keeps flipping the RCD on our bus circuit. CyberPower Value GP 1200VA Line Interactive. Sitting on the floor right now cuz I have no clue where I'm going to put it.
- I haven't been here just because I'm lazy and didn't feel like reading through 80+ forum posts to catch up. I got unlazy this morning.
- I set up my Sega Mega Drive next to my PS2 and Xbox 360 recently and that inspired me to create my own console with an Arduino Uno and a Mega. Turns out to be extremely difficult to output VGA with a 16MHz processor so I went on very long journey to find the best solution without "cheating" and just buying a 32-bit 48MHz Arduino Zero or an 84MHz Due (way too easy). Current plan is to use a CPLD (this one from eBay, an EPM7128SLC84-15 from Altera) in an 84-pin PLCC socket soldered to some prototype board I have, using one a variety of crystal oscillators I bought (including a 25MHz crystal, which will hopefully be close enough to the 25.175MHz 640x480 VGA pixel clock). Also bought some more new solder, a cheap solder-sucker (hopefully it won't be too bad), a variety of header pins, some new jumper cables and a couple of 32Kx8 20ns SRAM chips (the CY7C199-20PC). Wanted dual-port to simplify the design but it's hella-expensive and almost unavailable on eBay. If you want to learn how to program CPLDs of FPGAs in VHDL, check out EcProjects' very long but extremely informative and comprehensive FPGA-programming tutorials.
- I already successfully output 120x60 2-bit VGA video from an Arduino Uno, but the colour palette is too limited to do anything fun with (I want Mega Drive level graphics!).
- I'm now MG1 in CS:GO. I rek noobs but still get rekt by LEs and DMGs.
- Gource looks cool.
- I still have no idea where I'm gonna fit this UPS into my room without cables going backwards and forwards across the floor.
- Nick Bunyun, WarOwl and Trilluxe are awesome people.
- 2HP engines are cool. Make a go-kart or powered bike! (Do you live on property at all? We're on 20 acres so we'd have no trouble finding legal places to ride a custom-built thing, but if you're in town...)
- I'm desperately trying to get an extra day of work just so I can spend a day's pay on a CS:GO knife (really liking the look of the Flip Knife Slaughter minimal wear or Huntsman Case Hardened field tested, or Flip Knife Blue Steel field tested on a budget).
- I got my first ever mouse mat! SteelSeries QCK Heavy, cut to fit my oddly-shaped desk. Also moved my monitor back, put my keyboard on top of my desk (to make it the same height as my mouse), removed the keyboard tray and cut my desk down 2 inches (my chair adjusts like most but it wasn't high enough at full height). Now game-playing is tonnes more comfortable. At first I was terrified because I was changing the setup I'd used for years and years, but it worked out just fine
- I'm considering trying to sell my Song of Ice and Fire 7-book set because as awesome as they look on my bookshelf (and I'd be sad to see them go) they cost a lot of money and I don't even read them (I use an e-reader because the books are massive and too heavy to hold comfortably). Besides that, the set is no longer complete because DAMN YOU George R. R. Martin you released another book in the series. And there's another one planned for years from now, so... probably best to get rid of the books while I still can.
- ISIS (whatever that is - I probably should learn this sort of stuff) doesn't worry me because A) I don't follow the news so I don't generally find out about terrorist attack until ages after the fact (for ages I wondered why Paris of all places was trending on Twitter), B) I don't really know what ISIS/WASWAS (lol) even is, and C) as someone else mentioned most nations are allied against terrorists so they can't really do much to start a world war. The only thing that scares me is nuclear (NOT nucular - that's doesn't scare me at all) warfare, but either the bible is right and we don't need to worry or the bible is wrong and we only have to endure a couple of minutes of terror while the missiles reach their targets and then the Earth is destroyed and we won't know about it
- I've decided I like this format of updating what's been happening. This way I don't have to write coherent sentences and just sentence is make I word random can and.

Quote: "Ooooh wonderful Schnucks just cheated me out of my insurance coverage for next year!

I received documents at the end of my shift tonight which said that the enrollment date for coverage for next year was November 19th. Now, for those of you who can't do math very well, that was just shy of four days ago. I received no such documents at my shift and as far as I know neither did any of my coworkers.

I'm gonna storm into the corporate offices and demand a refund for insurance for the last year Eh if only, right?"


Geez I wouldn't be able to stand it. I'd have to storm into somewhere. That's just wrong and they need to be sued for it (I'm strongly against suing individuals - normally these things can be worked out face-to-face - but when it comes to big, greedy companies... Smithers, release the hounds).
Yodaman Jer
User Banned
Posted: 23rd Nov 2015 10:43
31raD wrote: "That sucks man. That's a heck of an either shady company or a disfunctional one."


xeknolC wrote: "I wouldn't be able to stand it. I'd have to storm into somewhere. That's just wrong and they need to be sued for it"


Believe me, if I could afford to I would sue. I'm talking to my manager about it today. I should have received the documents at the beginning of the month, why I didn't get them until yesterday shows that either my managers suck at getting papers to people or corporate "forgot" to send them to our store and they got there the day of the cutoff. Either way, if I've lost my insurance I have ZERO incentive to stay at the store past the beginning of the year. I'll stay as long as I need to until I find a better job.

Thankfully I got my old job back as part-time but I'm sure I could get full-time there if I wanted - it's just that it pays lower.

Forum President until June 20th, 2016.
Randomness 128
17
Years of Service
User Offline
Joined: 13th Feb 2007
Location:
Posted: 23rd Nov 2015 15:50
Quote: "I want Mega Drive level graphics!"

Please give tiles and sprites separate palettes.
320x224
Yodaman Jer
User Banned
Posted: 23rd Nov 2015 19:47
Got my insurance taken care of.

Is it bad that I was kind of looking forward to it being cancelled so I had a legit reason to quit?

Forum President until June 20th, 2016.
Randomness 128
17
Years of Service
User Offline
Joined: 13th Feb 2007
Location:
Posted: 23rd Nov 2015 21:07
Quote: "Is it bad that I was kind of looking forward to it being cancelled so I had a legit reason to quit?"

Looking for reasons to quit probably means you already have reasons to quit. (irrelevant cube)

Not that I'm complaining, but it hasn't been night since the last time you were on the server. It's rather convenient overall, but I'll want to move my bed at some point.


Quote: "I want Mega Drive level graphics!"

Feel free to ask me about its video chip's functionality if you want your console to display graphics in a similar manner. I'm making Exotreve for it so I have some experience there. This music for Exotreve was recorded like so:
320x224
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 24th Nov 2015 00:01 Edited at: 24th Nov 2015 00:04
Quote: "Please give tiles and sprites separate palettes."


Ah, now that's an interesting idea! I guess to do that I give my hardware (the CPLD chip) access to a larger-bit-count resistor DAC (maybe 12-bit if I'm storing 6-bit colours in memory?)... actually I could do that and then either render tiles with one palette and sprites with another, but I could also just store a variable with each sprite indicating which palette it wanted to use... ah, but how would I get the selected palette to the display chip....? Wait, I was planning on 6-bit colour (64-colour). I could use the extra 2 bits of the byte to indicate which of 4 available palettes to use. That could work. Then each sprite (or maybe even each tile... yeah that should be possible) could choose its own palette

Quote: "Feel free to ask me about its video chip's functionality if you want your console to display graphics in a similar manner. I'm making Exotreve for it so I have some experience there."


Oh what, Exotreve is a homebrew Mega Drive game?? Huh, your signature finally makes sense (the NTSC progressive output resolution of the Mega Drive). That's super cool. Definitely tell me more about how it works. I've been mostly guessing based on vague knowledge of how older hardware tended to work. (Not that I'm trying to exactly replicate the Mega Drive's architecture, I just want a similar type of system)

Quote: "This music for Exotreve was recorded like so:"


Haha I really like that music. Just listened to it several times in a row. Dark and creepy

So did you generate the music using the Yamaha.... YM-whatever? No idea how you do that sort of thing (I always assumed the Mega Drive used some sort of midi system).

EDIT: I find it strange that no one has commented on the fact that DBPro is now open-source and the source is on GitHub....
Dark Java Dude 64
Community Leader
13
Years of Service
User Offline
Joined: 21st Sep 2010
Location: Neither here nor there nor anywhere
Posted: 24th Nov 2015 03:01 Edited at: 24th Nov 2015 03:17
Quote: "- 2HP engines are cool. Make a go-kart or powered bike! (Do you live on property at all? We're on 20 acres so we'd have no trouble finding legal places to ride a custom-built thing, but if you're in town...)"
Ah finally, you're back. I was waiting for you to get here, as I figure you're probably the only one here who would be interested in my project. 2 horspower engines are cool! It fascinates me how they take two full grown horses and fit them in that tiny little block of metal. And they only need to eat gasoline! Genetic engineering these days can do some cool things. Jokes aside, it is a neat little engine. It's a model that Briggs made from 1959 to the late 90s; the one I have was made in 1972. It wasn't run a ton from what I can tell, little wear (the cylinder even has crosshatching still). It had been running rich for sure, as the inside of the combustion chamber was caked with carbon deposits. I have the engine entirely apart, except for the connecting rod and piston which are still together (I didn't want to scuff up the piston skirt trying to get out those stiff snap rings holding in the wrist pin). I also have most of the parts cleaned up quite nicely... When I first took it apart, my intention was just to clean it up and turn it into a neat little shelf model/centerpiece, but now I am thinking I could easily get it back together and running again. The valves probably need lapping, so I should be able to do that if the compression turns out to be really bad. I may need a new head gasket too, although I am toying with the idea of trying to make one from a whole bunch of layers of aluminum foil... Not sure how that would work. Other gaskets (like crankcase stuff) I plan on making out of thin cardboard. The ignition system needs a little help, and the carburetor may too (if it's been gummed with gas)... But then it should be ready to run! It has run under my ownership before, just years ago. And it ain't been stored properly since. Speaking of the carburetor, it's a very interesting type! Suction type, from what I hear. It's very simple, and has no bowl or anything. It only has a little tube that runs straight from the nozzle in the venturi down to the gas tank. So it actually runs a bit rich when the tank is full and lean when it's empty. Unfortunately though, the carburetor is of a single piece construction, so if I have to take it apart to repair it, well...

Assuming I get it running, I plan on making a motorized bike with it. I was originally planning on building a go kart, but when I'm thinking a mere two horsepower and buying all of the parts I need for it, I might as well just buy a more powerful engine. So I decided converting a bicycle over would be a great plan; that way, I already have a frame, wheels, steering, suspension, brakes, a seat, and (since it's a mountain bike) even a gearing system. My plan is to mount the engine and use a centrifugal clutch with it. I will probably use a basic system of chains and a shaft (which I need anyway to get the power from the left side of the bike to the right side [where the current power chain is]) to take power down to the large front sprocket, then have the currently existing bicycle chain go from the small front sprocket to the rear sprocket. Rear sprocket shifting functionality will hopefully be maintained. With those seven gears, even the little 2 HP engine should hopefully be able to take me up hills in low gears and attain decent speeds (20 mph?) in higher gears.

As for places to ride, that's a tough one. I do live in the mountains, rather rural neighborhood, on a 5 acre plot of land. Problem is, practically the entire 5 acres is on the side of a steep, rocky, forested hill. So no riding around on that! My neighborhood is rural as I mentioned though, so maybe I could get some fun riding in there. There is a police officer who lives in the neighborhood though... Oh well, we know him. There's a large, open, national forest area about 40 minutes from here; we like to go camping there, and people love riding their ATVs and dirtbikes there. At least for now (this will almost certain change as the place becomes more popular) it's unpatrolled, so you can get away with riding just about anything there. Tons of hilly but decently maintained, open dirt trails out there.

Quote: "Definitely tell me more about how it works."
Not to speak for him, but get in contact with Randomness on Skype, and I bet he will gladly tell you everything there is to know about that stuff. At least I think; that's how it was when he and I Skyped all the time.

BTW Randomness, do you guys still have the same chat going? I'll have to check in if you do.

Quote: "YM-whatever"
YM2612? 320x224, cycles, palates... All of these terms Randomness put into my head for life.

Quote: "DBPro is now open-source"
Whaaat it is? Nice!
Randomness 128
17
Years of Service
User Offline
Joined: 13th Feb 2007
Location:
Posted: 24th Nov 2015 03:18 Edited at: 24th Nov 2015 03:44
@Clonkex
Here are the basics:

Pixels are 4 bits each. Each sprite and 8x8 pixel tile can select one of 4 palettes. Colour 0 is always transparent. Colours in the palette are 9-bit and are stored in their own dedicated RAM.

(Here, the last 7 colours in palette 3 are animated to make lights change colour and give a flickering light effect from the torches on the wall.)


Two tile maps are stored in VRAM. They can be 32x32, 64x32, 128x32, 32x64, 32x128, or 64x64 tiles in size. Each tile map has its own horizontal and vertical scrolling setting. The tile maps wrap when their edges are reached, so you can scroll as far as you want by replacing off screen tiles with new ones. Each tile in the map uses 2 bytes:
Priority (1 bit) - Priority flags control which things appear in front of other things.
Horizontal mirror (1 bit) - If set, the tile is mirrored horizontally.
Vertical mirror (1 bit) - If set, the tile is mirrored vertically.
Palette (2 bits) - Selects one of the 4 palettes.
Address (11 bits) - Selects an image stored in VRAM to use for the tile. Each image is 8x8 pixels and uses 32 bytes. With 64 KB of VRAM, an 11-bit address can use an image from anywhere in VRAM, including memory used to store data such as tile maps themselves.

There's a 3rd tile map with no ability to scroll that can replace the 1st tile map on a region of the screen you specify. This can be useful for user interface stuff.


An array of up to 80 sprites is stored in VRAM. Each sprite has the same information as a tile, as well as an X coordinate, Y coordinate, width (8, 16, 24, or 32 pixels), height (same options as width), and link data. Sprites use the same 8x8 pixel images as tiles. If a sprite is larger than 8x8 pixels, it'll use multiple images stored sequentially starting from the address you specified. Up to 20 sprites or 320 pixels of sprites (whatever limit is reached first) can be drawn on each line.


Priority:
Each tile and sprite can be high or low priority depending on its priority flag. Things appear in this order:
FRONT
High priority sprites
High priority tiles from the first tile map
High priority tiles from the second tile map
Low priority sprites
Low priority tiles from the first tile map
Low priority tiles from the second tile map
Background colour
BACK

Sprites' priority flags control where they appear relative to tiles. Link data controls where sprites appear relative to other sprites. Sprite 0 is drawn first. Each sprite's link data specifies which sprite should be drawn next.

Sprites are handled before tiles. By the time tiles are drawn, sprites have been reduced to a bunch of pixels with colours and a priority flag, with no information about individual sprites. Imagine two sprites, which I'll call sprite egg and sprite waffle. Sprite egg appears in front of sprite waffle. However, sprite egg is a low priority sprite and sprite waffle is a high priority sprite. If a high priority tile is drawn in the same spot, it'll cover sprite egg, but sprite egg will still cover sprite waffle. This will result in a sprite egg shaped hole in sprite waffle.


There is no frame buffer. The video chip draws one line and one pixel at a time as it outputs the video signal. That means certain graphical effects can be achieved by changing video related things part way through a frame. The video chip can help you do that by generating interrupts when it reaches lines you want.


This water works by changing the palette part way through the frame.

https://www.youtube.com/watch?v=8cr1rqVcIhA&t=20s
The background here uses the second tile map. It achieves more complex parallax scrolling by changing the horizontal scroll setting multiple times throughout the frame.


Quote: "So did you generate the music using the Yamaha.... YM-whatever? No idea how you do that sort of thing (I always assumed the Mega Drive used some sort of midi system)."


I made the music using LMMS and a VST plugin that emulates a chip very similar to the YM2612. It's stored in the game using my own format that's similar in concept to midi. It's series of instructions that my music playing code interprets.

Here's the music data in a form that probably makes it pointless to post:


The YM2612 is similar to Yamaha DX keyboards, which were quite popular in the 80s (listen to https://www.youtube.com/watch?v=djV11Xbc914 and https://www.youtube.com/watch?v=hf1UXzrZPMM and compare the bass lines.) It has 6 voices of 4 operator FM synth. The last voice can be used to play samples instead. The console has a second processor, a 3.58 MHz Z80, which can be used to handle audio related stuff so the CPU doesn't have to. I used that to do software mixing in addition to playing music, so Exotreve can play 3 samples at the same time. I decided to reserve one sample for sound effects and the other two for music, which the music I posted uses for drums. There's also a Texas Instruments SN76489, which has 3 square wave generators and a noise generator. I decided to reserve 2 square wave generators for music and the rest for sound effects. A lot of games will let sound effects temporarily interrupt instruments in the music, but I find that rather pft.


Quote: "Not to speak for him, but get in contact with Randomness on Skype, and I bet he will gladly tell you everything there is to know about that stuff. At least I think; that's how it was when he and I Skyped all the time."


That would work, but I'd fear for you. What if my procrastination spreads?


Quote: "BTW Randomness, do you guys still have the same chat going? I'll have to check in if you do."


We started a new one for Skype pftness reasons. Also Zach left for some reason.
320x224
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 24th Nov 2015 10:40
Quote: "I may need a new head gasket too, although I am toying with the idea of trying to make one from a whole bunch of layers of aluminum foil... Not sure how that would work."


You can get "gasket goop" stuff, or you can buy gasket material and cut it to fit. For a little old engine like that I would think you wouldn't need much.

Quote: "Other gaskets (like crankcase stuff) I plan on making out of thin cardboard."


We've done that before! The only disadvantage is that you kinda have to replace them every time you take that particular section apart, since the cardboard falls apart.

Quote: "Unfortunately though, the carburetor is of a single piece construction, so if I have to take it apart to repair it, well..."


Haha, well let's hope it just works! (Although by the sounds of it, there's not a lot to go wrong - maybe it might be gunked up, but some compressed air should help with that)

Quote: "With those seven gears, even the little 2 HP engine should hopefully be able to take me up hills in low gears and attain decent speeds (20 mph?) in higher gears."


That really makes me wish I had a small engine going spare to do a project like this! I'd have to get some more practice at welding since I'm currently utter crap at it, but it'd still be a fun project

Quote: "YM2612?"


That's the one lol, guess I could have googled it

-------------------------------------------------------------------------------------------------------------------------------------------------------------------

@Randomness:

Wow, that's a lot of information! Thanks for taking the time to explain it all, this is super cool!

Quote: "Pixels are 4 bits each. Each sprite and 8x8 pixel tile can select one of 4 palettes. Colour 0 is always transparent."


8x8 seems small... Oh, but I guess it's a compromise between wasting memory on tiles with lots of transparency (when you want a small tile) and wasting memory on more tiles. So aside from colour 0, you can change which of the 512 available colours are used in each palette at any time?

Quote: "Each tile map has its own horizontal and vertical scrolling setting."


You mean a position/offset?

Quote: "Address (11 bits) - Selects an image stored in VRAM to use for the tile. Each image is 8x8 pixels and uses 32 bytes. With 64 KB of VRAM, an 11-bit address can use an image from anywhere in VRAM, including memory used to store data such as tile maps themselves."


So if you were really clever you could draw a map of the level by creating tiles that referenced the tile maps themselves? Not sure how well that would work and it would probably be more effort than it's worth though

Quote: "Up to 20 sprites or 320 pixels of sprites (whatever limit is reached first) can be drawn on each line."


Ah, does this explain why when I go into debug mode in Sonic (1 or 2) and spawn tonnes of rings or lady bug things or whatever, after a certain number they just stop rendering?

Quote: "Priority:
[snip]"


This explains why Sonic's shield is visible over the top of the background tiles when he goes into the tunnel at 35 seconds in the video you linked? I always thought that was a bit weird.

Quote: "Link data controls where sprites appear relative to other sprites. Sprite 0 is drawn first. Each sprite's link data specifies which sprite should be drawn next."


What controls which sprite is linked? Is that controlled by the game programmer or the console? And does the console just lock up if you link two sprites to each other?

Quote: "Imagine two sprites, which I'll call sprite egg and sprite waffle. Sprite egg appears in front of sprite waffle. However, sprite egg is a low priority sprite and sprite waffle is a high priority sprite. If a high priority tile is drawn in the same spot, it'll cover sprite egg, but sprite egg will still cover sprite waffle. This will result in a sprite egg shaped hole in sprite waffle."


That hurts my brain because it's impossible in real life :/

Quote: "There is no frame buffer. The video chip draws one line and one pixel at a time as it outputs the video signal."


Ok, so that changes how I plan to make my "console".... So does it just find which sprites and tiles contain a certain pixel and then calculate the which pixel to display based on priorities or what? But then how does it handle sprite linking? I can't picture how this would work.

Quote: "This water works by changing the palette part way through the frame.

https://www.youtube.com/watch?v=8cr1rqVcIhA&t=20s
The background here uses the second tile map. It achieves more complex parallax scrolling by changing the horizontal scroll setting multiple times throughout the frame."


Huh, that's really clever. I always assumed the water in Chemical Plant was a pink overlay, but I guess it never occurred to me that the Mega Drive hardware probably didn't support partial alpha or colour blending.

Quote: "That would work, but I'd fear for you. What if my procrastination spreads?"


Our procrastinations would join forces and destroy the world. Better not Skype

Incidentally (or not), what's the game in the top image? I don't recognise it at all. Oh, is that Exotreve? I know the second image. In fact I know Sonic 2 like the back of my hand
Randomness 128
17
Years of Service
User Offline
Joined: 13th Feb 2007
Location:
Posted: 24th Nov 2015 16:59
Quote: "you can change which of the 512 available colours are used in each palette at any time?"

Yes. You can even change colour 0, it just gets used as transparency regardless.

Quote: "You mean a position/offset?"

Yes.

Quote: "So if you were really clever you could draw a map of the level by creating tiles that referenced the tile maps themselves? Not sure how well that would work and it would probably be more effort than it's worth though"

It would be rather difficult to make the tile map data look like anything meaningful when used as an image, but yes. Also, if you know you'll never see part of a tile map on the screen, for instance a HUD drawn with the 3rd tile map would leave the majority of the 3rd tile map invisible, you could safely put images where the rest of the tile map would be.

Quote: "Ah, does this explain why when I go into debug mode in Sonic (1 or 2) and spawn tonnes of rings or lady bug things or whatever, after a certain number they just stop rendering?"

Possibly. Definitely if they only stop rendering when they're on the same horizontal line.

Here, the bridge stops rendering because of all the stars.

Quote: "This explains why Sonic's shield is visible over the top of the background tiles when he goes into the tunnel at 35 seconds in the video you linked?"

Indeed.

Quote: "What controls which sprite is linked? Is that controlled by the game programmer or the console? And does the console just lock up if you link two sprites to each other"

The programmer controls it. If you link two sprites to each other, it'll eventually reach the 80 sprites per screen, 20 sprites per line, or 320 sprite pixels per line limit and stop rendering them.

Quote: "So does it just find which sprites and tiles contain a certain pixel and then calculate the which pixel to display based on priorities or what? But then how does it handle sprite linking? I can't picture how this would work."

For sprites, it buffers lines instead of the entire frame. While one line is being displayed, it reads sprite pixels from one buffer while drawing sprites for the next line to another buffer. For tile maps, it can just figure out which tile should be drawn at the current pixel based on the tile map's scroll/position/offset thingy. It starts rendering a line before it displays anything so sprites for the first line will be buffered. If you enable rendering part way through the frame, you'll get messed up sprites for a line or two because the buffers will contain old data.

Quote: "I guess it never occurred to me that the Mega Drive hardware probably didn't support partial alpha or colour blending."

Indeed it does not.

Quote: "Incidentally (or not), what's the game in the top image? I don't recognise it at all. Oh, is that Exotreve?"

It is.



It also displays a blank border around the screen to compensate for overscan (which uses the background colour, not black). This also has the benefit of effectively giving you a larger vertical blank to transfer stuff for the next frame to VRAM. PAL systems become terribly letterboxed, but at least that gives you even MORE time to transfer stuff! With the way it renders, a lack of VSync could look rather broken. You also can't transfer to VRAM very quickly while rendering is in progress because the video chip will be using most of its bandwidth. You can disable and enable rendering whenever you want, even part way through a frame (doing that during gameplay would usually be very annoying, of course). With rendering disabled, it outputs the background colour.
320x224
budokaiman
FPSC Tool Maker
14
Years of Service
User Offline
Joined: 24th Jun 2009
Playing: Hard to get
Posted: 24th Nov 2015 21:17
Quote: "EDIT: I find it strange that no one has commented on the fact that DBPro is now open-source and the source is on GitHub...."

Hasn't it been open source for years on Google Code?
"Giraffe is soft, Gorilla is hard." - Phaelax
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 25th Nov 2015 03:51
Quote: " Hasn't it been open source for years on Google Code?"

They just open-sourced the compiler, which was not previously open-sourced. DarkGDK was open-sourced which used the same back-end but was never really updated.
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 25th Nov 2015 07:10
Quote: "Possibly. Definitely if they only stop rendering when they're on the same horizontal line."


Yeah I think so. I'll check later because I'm curious

Quote: "Here, the bridge stops rendering because of all the stars."


Ah, I always wondered why bits of some sprites stopped rendering! Didn't make that connection 'til you said that

Quote: "If you link two sprites to each other, it'll eventually reach the 80 sprites per screen, 20 sprites per line, or 320 sprite pixels per line limit and stop rendering them."


Oh yeah. Duh.

Quote: "PAL systems become terribly letterboxed, but at least that gives you even MORE time to transfer stuff!"


A couple of weeks ago was the first time I'd used the Mega Drive since I used it last on an enormous, massive, very large and heavy flatscreen CRT, so I noticed the blue border on Sonic immediately, but I did assume it was to provide a title-safe area for old CRT TVs. And yeah, my PAL system has more blue than that screenshot

Quote: "You also can't transfer to VRAM very quickly while rendering is in progress because the video chip will be using most of its bandwidth."


You successfully pre-answered one of my questions haha Thanks for all that info, you've done a wonderful job of explaining how the rendering system of a Mega Drive works!

Quote: "Hasn't it been open source for years on Google Code?"


What Dar13 said. Have you not seen the thread?
Dark Java Dude 64
Community Leader
13
Years of Service
User Offline
Joined: 21st Sep 2010
Location: Neither here nor there nor anywhere
Posted: 25th Nov 2015 08:22
Quote: "You can get "gasket goop" stuff, or you can buy gasket material and cut it to fit. For a little old engine like that I would think you wouldn't need much."
Ah indeed, I have seen some of that stuff. I bet it works well! If I can't get anywhere with reusing the old gasket or making a new one, that might be a good option.

Quote: "Haha, well let's hope it just works!"
Idea! If the carburetor doesn't work, I'll just get a squirt bottle and some gasoline. Squirt faster for more power!

Quote: "That really makes me wish I had a small engine going spare to do a project like this! I'd have to get some more practice at welding since I'm currently utter crap at it, but it'd still be a fun project "
Small engines are pretty neat. Easy to get a hold of if you know where to look... I got this one for 20 dollars at a garage sale when I was 9 years old. I was really into engines back then, so I would just go outside with it, start it up, and watch it run. It actually scared me a bit, so I would typically turn it off after like 30 seconds, lol. Oh the good times.

I don't know how to weld myself, but I am sure I will get a little practice with this motorized bike project. I do wonder though if my bike's frame is aluminum; that isn't n00b welding material from what I hear.
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 25th Nov 2015 11:10
Quote: "I don't know how to weld myself"


To be clear, I've welded a total of one time(s) in my entire life

Quote: "I do wonder though if my bike's frame is aluminum"


Probably. Steel frames are old-fashioned and freakin' heavy (i.e. dad's old bike is steel-framed, and it feels really heavy for its size). I mean, they use steel frames for racing bikes alongside carbon fibre, but the vast majority of consumer bicycles are aluminium.
budokaiman
FPSC Tool Maker
14
Years of Service
User Offline
Joined: 24th Jun 2009
Playing: Hard to get
Posted: 25th Nov 2015 12:05
Quote: "What Dar13 said. Have you not seen the thread?"

No, I only ever venture into Geek Culture. I havve gone into AppGameKit boards probably 3 times though.
"Giraffe is soft, Gorilla is hard." - Phaelax
Yodaman Jer
User Banned
Posted: 25th Nov 2015 13:43 Edited at: 25th Nov 2015 13:47
So, a relative of mine shared this post yesterday. Since it is painfully obvious that it's photoshopped, this was my response.



EDIT: Also, last night I bought a ring for $81.99. I might be planning something a proposal of sorts....

Forum President until June 20th, 2016.

Attachments

Login to view attachments
budokaiman
FPSC Tool Maker
14
Years of Service
User Offline
Joined: 24th Jun 2009
Playing: Hard to get
Posted: 25th Nov 2015 13:57
Last night I bought another GTX 980. Not for proposal sorts, but for Just Cause 3 sorts...
"Giraffe is soft, Gorilla is hard." - Phaelax
Yodaman Jer
User Banned
Posted: 25th Nov 2015 19:19 Edited at: 25th Nov 2015 19:20
Ah, I am considering a 980, but at the price point I should just spring for a 980ti... but I don't have the money for either at the moment.

Anyway, here's a pic of the ring I bought, since TGC doesn't like the link for some reason. It's normally almost $400, so it was almost a steal at $81.99 and should arrive by December 9th, which is good.


It's 1/10th carat ACTUAL diamond. I can't believe I managed it. Actually my sister helped to find it.

Now what should I get the GF for Christmas? This ring is probably going to be for New Year's Eve... maybe. I haven't decided if that would be too cliche or not

Forum President until June 20th, 2016.

Attachments

Login to view attachments
KeithC
Senior Moderator
18
Years of Service
User Offline
Joined: 27th Oct 2005
Location: Michigan
Posted: 26th Nov 2015 16:33
Good luck buddy!
-Keith
Fallout3fan
14
Years of Service
User Offline
Joined: 9th May 2009
Location:
Posted: 27th Nov 2015 01:46
Randomness128 I added you again. I began making a web series as well:


Willing to be hired as a voice actor for work and to put on a resume.
Fallout3fan
14
Years of Service
User Offline
Joined: 9th May 2009
Location:
Posted: 27th Nov 2015 01:48 Edited at: 27th Nov 2015 07:19
Also where I have been lately: EOSHD.com
To fix up double posting have you guys thought of merging posts? Right here is an example.

I really found filmmaking is more of my thing than game creating. When I opened up a programming software, I first thought: "Man I can't wait to make a game easily and in my own way!" But later I found out... Ehhhh.... Not my thing. Because I do not want to give it graphics or functionality I don't want and I wanted to tell my story and art thoroughly. Dark Basic Pro was sitting in the dust in my closet for a while. And I just had a lot of fun with a camera. Just so much fun with it. I felt more in control . I felt I could tell my stories easier and art easier. I loved it. What I even loved most about it was that my science fiction game ideas, once transfered to film instead of making a game with it. Get a much better result. The one I have been planning in my head and childhood turned out to be a lot better as a movie. Man when I get later on my path, whomever one of you who has been there for me on this site. I'm giving you a license to make a video game based on my movies. Yes it sounds too glorious, but some of you have been there for me.

TheComet I still am willing to be a voice actor. I have gotten some experience too. I did about four college plays and stage managed one. I also am about to do more gigs with my acting. You don't want to miss out because of that one guy who has grudges against me. I still don't know why and if he wants to the rest of his life then so be it. I also got myself an Azden SGM-1X, a TASCAM DR-40, and an XLR Cable. It delievers 96khz 24 Bit audio. Now this is like gold in the filmmaking world and it can help you out. I'm not a perfect voice actor and I still am trying, I took a good amount of classes in acting and am reading 30 books on Acting. I'm free too.
Willing to be hired as a voice actor for work and to put on a resume.

Login to post a reply

Server time is: 2024-04-25 18:08:11
Your offset time is: 2024-04-25 18:08:11