Most microcontrollers today look similar, with what seems like a ridiculously low amount of RAM compared to ROM.
That's true, but the only MCUs I've worked with that have this little RAM is the PIC 16F/16C, and I couldn't have imagined driving a TV with one of those.
The current MCU I'm working with is a MC9S12 with 12KiB SRAM/256KiB FLASH... I feel so dirty:-)
I've been coding some stuff on the Atari and it's an extremly cool machine.
You can actually build one yourself, if you have a little knowledge in electronics.
From the article it says that the 2600 has a custom chip - the TIA. How do you substitute that? With an MCU/FPGA?
HC12/HCS12 devices are extremely easy to debug and develop software for. There is a fantastic Java-based simulator here. If you don't have dev tools that natively understand Motorola's BDM (Background Debugging Module) protocol, you can use a second HC12 configured as a "pod" device interfaced via BDM pins to the target, which will get you a very powerful interactive debugging console via DBug12 (example session here).
I've been doing a lot of work with the 9S12DP256 device. It has 256KiB FLASH, 12KiB SRAM, 4KiB EEPROM, 112QFP, 16 10bit A/D channels, CAN, 2xSCI, 3xSPI, etc etc. and clocks up to 25MHz.
Although HC11s are cheap and easy to come by in 1off quantitites from various retailers, the only HC12s most have available (such as Farnell) are the newer HC9S12 devices such as the one I've just mentioned.
What's the problem with this? Well on paper, nothing. These are extremely powerful devices. I'm going to use the MC9S12A64 in production; these are just $9.80 USD from Arrow.
The problem is that what with the HCS12 core and the family's peripherals being relatively new, Motorola Semiconductor is restructuring (renaming to Freescale Semiconductor), there are a godawful huge number of bugs. The most crippling being so far, SCI interrupts being basically useless (can only rely on having one INTR configured), not to mention PLL config deficiencies, BDM defects, etc.
It isn't too bad if you read the erratta sheet FIRST before chasing your tail and banging your head off the desk.
For a HCS12-based device (actually uses the same IC I've discussed), check out the Adapt9S12, but again at $159 USD it isn't cheap. The best bargain I've found is the MiniDragon+ which actually has more packed on the PCB than the Adpat9S12 and is $89 USD for students/schools/hobbyists. And at still less than the Adapat9S12 price is the super-deluxe-mercedes decadance model the full Dragon12 evaluation board, with on-board LCD, 2xRS485 sockets, 2xRS232 sockets, 7segment displays, speaker, IR, etc.
I can highly recommend the evbplus.com (aka Wytec) boards, but in doing so I must disclose that I have recieved the MiniDRAGON+/Dragon12 (fr
It was insulin shock, not electic. It looked like they were trying to use hypoglycaemia to try and separate reality from fantasy. Or something.
By the way, as a type 1 diabetic, I can tell you insulin does NOT work anywhere NEAR as fast as they seemed to imply. Unless the synthetic stuff these days is a lot different to the old bovine insulin..
I thought a hypoglycaemia induced seizure carried significant risk of permanent brain damage?
What other market segment does Nintendo have to fall back on? Do you think they could make massive losses year after year propped up by something else?
Sure, they're all greedy multinational corps etc. but MS definately has unfair leverage here, no matter how smart/effective you think their activities are.
By definition, this about-to-be-executed memory has to NOT be marked NX, or the program could not execute its jump, and would have no way of meandering its way out of the function and back up the stack.
Actually I think he's right. I'm not familiar with x86 ASM, but on other CPUs a stack is a stack... if you can modify the stack, you can make an RTS in the existing code pull a bogus return address off the stack.
If I understand it correctly (I probably don't), stack space would almost always be marked NX anyway. So although we can still change program flow, the real trick is that we can't use memory allocated as stack space to hold the malicious code we want to run. We would have to find or allocate some non-NX memory for that.
This is off topic I know, but I'm Australian and going through school we were always taught that "Ayers Rock" was the bad, insensitive, politically incorrect name for Uluru. That's its real name under the current owners since the government handed over the land in the Kata Tjuta national park to the local Aboriginals of the area in 1984.
D'oh, I meant average new systems have 256MB. Further, that 256 number was supposed to refer to system RAM, not video RAM. I'd agree with your observations on cheap cards having too much memory. Probably cheaper to increase sales with a bigger RAM number than actual GPU performance.
Back in the day, I had a game on my Amiga called "Shadow of the Third moon", a space flight sim, that used voxels. It was quite a novelty at the time and I only had 16MB RAM.
Now that even cheap 3D cards have 128MB RAM on them, average systems have 256MB RAM, where are voxels used now?
Microcode solutions were extremely pissed with Christian Bauer. I read somewhere, that to prove he was copying their code for their own competing product, "fusion-pc", Microcode Solutions put dummy code in one of their releases. That dummy code appeared later in ShapeShifter. Can't find a ref at the moment.
When (as Drew alleges) EMPLANT code was illegaly utilized by Christian Bauer (who would later create Basilisk II) to create Shapeshifter, a shareware Mac-on-Amiga emulator, UUI was put out of business. Drew, however, continued his emulation work by founding "Microcode Solutions" on August 24 1996, with two of his co-workers, including programmer Joseph Fenton who is still with the company. Together, they developed "Fusion," a software-only (no costly hardware was required) Macintosh emulator for the Amiga system.
I think the early part of an even numbered release is always prone to bugs/instability/rapid activity. 2.4 had some major issues in the beginning too, I think i2o was broken around 2.4.10, along with code rewrites of seemingly important areas. I'm not sure if I ever got to use power managment stuff properly in 2.4.
Just as with 2.2 -> 2.4, I think people will stick with 2.4: a) as long as possible (if it isn't broken, don't fix it) b) until 2.6 is "more stable". c) as soon as they could be bothered upgrading to 2.6
I remember I stayed with 2.2 until 2.4.12 came out. Not everyone "needs" 2.6. But this time, I did. I was running 2.4.18-ac2-rcxyz since my machine was too "new" for linux. Various release after that worked great (I have a 2.4.20 patched kernel that did everthing I want), but support for OpenGL accelerated software has come and gone (working for 2.6.5/X v4.3.0.1), not to mention ALSA sounding like it was "under water".
This time, I've been playing with 2.5.x and pretty much kept up with 2.6 releases.
They had to bump it to 2.6 at some stage, or else it would never get to where (I think) we want 2.6 to be.
... yet another AC modded down for no obvious reason.
We might see quotations in books from non
English speaking countries;-)
And then they can learn to use 'freakin SI units! I couldn't believe the shock/horror when I purchased an otherwise fantastic comms circuits book, and found that the worked examples were almost useless due to usage of feet/farenheit/inches/miles.
it would be nice not to have to pay $500+ a semester for books.
What are you studying? Surely you don't need to buy them all!
I've only really had two subjects (in 4th year EE now) that depended on me having the text book (to the extent that, if I didn't have it, it would be detrimental to my grades... not that I get good grades anyway;-)
I know different degrees differ, but perhaps you are in first year and bought all the books your subjects listed? I did that too..
With an average of 5 subjects per semester, I buy about 1-2 books, after I've decided which subject would benefit the most. Example topics (for me): Control Systems Theory, Communication Systems and Circuits, Semiconductor Devices, and of course the Mary L Boas maths text (forget the title, but very useful over years 1 & 2).
These books cover difficult (for me anyway) concepts and I can imagine that I will find them useful in the future. On the other hand, I have about 4 texts I bought in first year that I've opened less than 5 times each. They provide no real value over the lecture notes, and are so basic that they are barely useful in first year, let alone beyond.
Admittedly, sometimes it would be nice to just have the damn book. Once, after failing to learn properly from the lecture notes (I don't go to lectures) and quick web searches, I had to head to the library and go through a few different books I found myself. It was a certain topic in Transmission Line theory (microwave amplifier design using PCB microstrips for impedance matching/freq. response).
Another thing, will schools then start supplying laptops or tablet PC's to view these text books on while in class?
God I hope not; our lab equipment needs refreshing along with more (competent) demonstrators/tutors before we start splurging on what I think would be a very low bang for buck investment...
I've filled in for the support end of an ISP. The system used to show what URLs people were visiting.
Sure, IRC-DCC and P2P programs are not very revealing of content being transferred, but the point is nobody at your ISP cares about you _specifically_ doing it because at least 10% of all the customers are "abusing" their accounts just like you.
You've got safety in numbers and the ISP wants your money, that's all:-)
E.G.:I was trying to look for the iptables file under Slack (RH keeps it at/etc/sysconfig/iptables), but Slack didn't have a sysconfig dir within/etc..and unless I overlooked it, it wasn't in the/etc directory.
I'm a Debian guy. Damn I hate the RH/etc layout. Perhaps I'm stupid but grepping sysconfig directory matches three different files where I have I may possibly put config info for for eth0. I can't do "man eth-cfg" to learn how to edit these files anyway. In Debian, I can "man" interfaces (found in/etc/network/interfaces), modules (found in/etc/modules), sources.list (found in/etc/apt/sources.list) and so on... you get the picture. Last time I installed RedHat, I couldn't even man XF86Config?!
And I still don't know exactly where exactly do I put a list of modules I want loaded at boot time in RH.
Not sure where the iptables files are in slack, but in Debian they are in/var/lib/iptables/*. Granted, I only found that out by peeking in/etc/init.d/iptables.
Each to their own I guess. I still end up having to fix RedHat boxes, but it annoys me... a lot;-)
Regarding auto-detection of USB hardware and so on - installed Knoppix on a friend's Japanese Sony Vaio (after finding the right boot parms and a failed attempt at getting RH9 to work, his choice), The HD-installed Knoppix does quite a nice job of detecting/setting up plug 'n play hardware.
Hah! I got a screenshot and grabbed the files - you've made my day ;-)
Most microcontrollers today look similar, with what seems like a ridiculously low amount of RAM compared to ROM.
:-)
That's true, but the only MCUs I've worked with that have this little RAM is the PIC 16F/16C, and I couldn't have imagined driving a TV with one of those.
The current MCU I'm working with is a MC9S12 with 12KiB SRAM/256KiB FLASH... I feel so dirty
Obviously... it has no framebuffer, that's incredible. It couldn't have a framebuffer even if it wanted to, unless you only wanted 16x8 resolution.
And I thought C64 coding was hardcore... 128 bytes of total RAM? Just writing a character generator would be challenging, let alone a game!
I've been coding some stuff on the Atari and it's an extremly cool machine. You can actually build one yourself, if you have a little knowledge in electronics. From the article it says that the 2600 has a custom chip - the TIA. How do you substitute that? With an MCU/FPGA?
I think anyone who is anyone who knows anything about 16bit MCUs knows about the Motorola HC12 family and it's 8bit predecessor the HC11. The HC11/HC12 is well supported by GCC, binutils and friends (also check out http://www.gnu.org/software/m68hc11/) which is also nicely packaged under Debian/GNU unstable and testing.
HC12/HCS12 devices are extremely easy to debug and develop software for. There is a fantastic Java-based simulator here. If you don't have dev tools that natively understand Motorola's BDM (Background Debugging Module) protocol, you can use a second HC12 configured as a "pod" device interfaced via BDM pins to the target, which will get you a very powerful interactive debugging console via DBug12 (example session here).
I've been doing a lot of work with the 9S12DP256 device. It has 256KiB FLASH, 12KiB SRAM, 4KiB EEPROM, 112QFP, 16 10bit A/D channels, CAN, 2xSCI, 3xSPI, etc etc. and clocks up to 25MHz.
Although HC11s are cheap and easy to come by in 1off quantitites from various retailers, the only HC12s most have available (such as Farnell) are the newer HC9S12 devices such as the one I've just mentioned.
What's the problem with this? Well on paper, nothing. These are extremely powerful devices. I'm going to use the MC9S12A64 in production; these are just $9.80 USD from Arrow.
The problem is that what with the HCS12 core and the family's peripherals being relatively new, Motorola Semiconductor is restructuring (renaming to Freescale Semiconductor), there are a godawful huge number of bugs. The most crippling being so far, SCI interrupts being basically useless (can only rely on having one INTR configured), not to mention PLL config deficiencies, BDM defects, etc.
It isn't too bad if you read the erratta sheet FIRST before chasing your tail and banging your head off the desk.
From the HC11/HC12 GCC port pages, here's a list of tested evaluation boards. Of these I've worked with the Technological Arts Adapt912, which, whilst a fine board, is quite expensive.
For a HCS12-based device (actually uses the same IC I've discussed), check out the Adapt9S12, but again at $159 USD it isn't cheap. The best bargain I've found is the MiniDragon+ which actually has more packed on the PCB than the Adpat9S12 and is $89 USD for students/schools/hobbyists. And at still less than the Adapat9S12 price is the super-deluxe-mercedes decadance model the full Dragon12 evaluation board, with on-board LCD, 2xRS485 sockets, 2xRS232 sockets, 7segment displays, speaker, IR, etc.
I can highly recommend the evbplus.com (aka Wytec) boards, but in doing so I must disclose that I have recieved the MiniDRAGON+/Dragon12 (fr
It was insulin shock, not electic. It looked like they were trying to use hypoglycaemia to try and separate reality from fantasy. Or something.
By the way, as a type 1 diabetic, I can tell you insulin does NOT work anywhere NEAR as fast as they seemed to imply. Unless the synthetic stuff these days is a lot different to the old bovine insulin..
I thought a hypoglycaemia induced seizure carried significant risk of permanent brain damage?
Then again, who knows. I don't.
I for one encourage MS, because, in this field, they have the best chance of actually doing it and doing it well.
.. "The home and entertainment division that includes the Xbox video game machine had an operating loss of $394 million on $1.27 billion in revenue."
I guess that's why
What other market segment does Nintendo have to fall back on? Do you think they could make massive losses year after year propped up by something else?
Sure, they're all greedy multinational corps etc. but MS definately has unfair leverage here, no matter how smart/effective you think their activities are.
By definition, this about-to-be-executed memory has to NOT be marked NX, or the program could not execute its jump, and would have no way of meandering its way out of the function and back up the stack.
Actually I think he's right. I'm not familiar with x86 ASM, but on other CPUs a stack is a stack... if you can modify the stack, you can make an RTS in the existing code pull a bogus return address off the stack.
If I understand it correctly (I probably don't), stack space would almost always be marked NX anyway. So although we can still change program flow, the real trick is that we can't use memory allocated as stack space to hold the malicious code we want to run. We would have to find or allocate some non-NX memory for that.
This is off topic I know, but I'm Australian and going through school we were always taught that "Ayers Rock" was the bad, insensitive, politically incorrect name for Uluru. That's its real name under the current owners since the government handed over the land in the Kata Tjuta national park to the local Aboriginals of the area in 1984.
The Department of Environment and Heritage doesn't even have the term "Ayers" anywhere on the Uluru - Kata Tjuta National Park website.
If you're worried that Uluru is too confusing, probably use "Uluru/Ayers Rock" instead of "Ayers Rock Uluru" which I've been seeing some people use.
At 1.1PB per L550 Silo, from Sun Microsystems.
Never mind. I'm a moron.
Re:Maybe... (Score:0)
by Anonymous Coward on Tuesday May 11, @12:03PM (#9117327)
Actually I'd agree with the AC. Not a troll. Not even an irrational opinion.
So, as always, I'm wondering why AC was modded down.
D'oh, I meant average new systems have 256MB. Further, that 256 number was supposed to refer to system RAM, not video RAM. I'd agree with your observations on cheap cards having too much memory. Probably cheaper to increase sales with a bigger RAM number than actual GPU performance.
Back in the day, I had a game on my Amiga called "Shadow of the Third moon", a space flight sim, that used voxels. It was quite a novelty at the time and I only had 16MB RAM.
Now that even cheap 3D cards have 128MB RAM on them, average systems have 256MB RAM, where are voxels used now?
google for voxels
If Basilisk II has even a scrap of ShapeShifter code in it (his previous project on the Amiga) then it is ILLEGAL.
http://www.emaculation.com/fusion.php
Microcode solutions were extremely pissed with Christian Bauer. I read somewhere, that to prove he was copying their code for their own competing product, "fusion-pc", Microcode Solutions put dummy code in one of their releases. That dummy code appeared later in ShapeShifter. Can't find a ref at the moment.
When (as Drew alleges) EMPLANT code was illegaly utilized by Christian Bauer (who would later create Basilisk II) to create Shapeshifter, a shareware Mac-on-Amiga emulator, UUI was put out of business. Drew, however, continued his emulation work by founding "Microcode Solutions" on August 24 1996, with two of his co-workers, including programmer Joseph Fenton who is still with the company. Together, they developed "Fusion," a software-only (no costly hardware was required) Macintosh emulator for the Amiga system.
I think the early part of an even numbered release is always prone to bugs/instability/rapid activity. 2.4 had some major issues in the beginning too, I think i2o was broken around 2.4.10, along with code rewrites of seemingly important areas. I'm not sure if I ever got to use power managment stuff properly in 2.4.
Just as with 2.2 -> 2.4, I think people will stick with 2.4:
a) as long as possible (if it isn't broken, don't fix it)
b) until 2.6 is "more stable".
c) as soon as they could be bothered upgrading to 2.6
I remember I stayed with 2.2 until 2.4.12 came out. Not everyone "needs" 2.6. But this time, I did. I was running 2.4.18-ac2-rcxyz since my machine was too "new" for linux. Various release after that worked great (I have a 2.4.20 patched kernel that did everthing I want), but support for OpenGL accelerated software has come and gone (working for 2.6.5/X v4.3.0.1), not to mention ALSA sounding like it was "under water".
This time, I've been playing with 2.5.x and pretty much kept up with 2.6 releases.
They had to bump it to 2.6 at some stage, or else it would never get to where (I think) we want 2.6 to be.
... yet another AC modded down for no obvious reason.
;-)
We might see quotations in books from non English speaking countries
And then they can learn to use 'freakin SI units! I couldn't believe the shock/horror when I purchased an otherwise fantastic comms circuits book, and found that the worked examples were almost useless due to usage of feet/farenheit/inches/miles.
it would be nice not to have to pay $500+ a semester for books.
;-)
What are you studying? Surely you don't need to buy them all!
I've only really had two subjects (in 4th year EE now) that depended on me having the text book (to the extent that, if I didn't have it, it would be detrimental to my grades... not that I get good grades anyway
I know different degrees differ, but perhaps you are in first year and bought all the books your subjects listed? I did that too..
With an average of 5 subjects per semester, I buy about 1-2 books, after I've decided which subject would benefit the most. Example topics (for me): Control Systems Theory, Communication Systems and Circuits, Semiconductor Devices, and of course the Mary L Boas maths text (forget the title, but very useful over years 1 & 2).
These books cover difficult (for me anyway) concepts and I can imagine that I will find them useful in the future. On the other hand, I have about 4 texts I bought in first year that I've opened less than 5 times each. They provide no real value over the lecture notes, and are so basic that they are barely useful in first year, let alone beyond.
Admittedly, sometimes it would be nice to just have the damn book. Once, after failing to learn properly from the lecture notes (I don't go to lectures) and quick web searches, I had to head to the library and go through a few different books I found myself. It was a certain topic in Transmission Line theory (microwave amplifier design using PCB microstrips for impedance matching/freq. response).
Another thing, will schools then start supplying laptops or tablet PC's to view these text books on while in class?
God I hope not; our lab equipment needs refreshing along with more (competent) demonstrators/tutors before we start splurging on what I think would be a very low bang for buck investment...
I've filled in for the support end of an ISP. The system used to show what URLs people were visiting.
:-)
Sure, IRC-DCC and P2P programs are not very revealing of content being transferred, but the point is nobody at your ISP cares about you _specifically_ doing it because at least 10% of all the customers are "abusing" their accounts just like you.
You've got safety in numbers and the ISP wants your money, that's all
Perhaps he's talking about assert failures. Matlab's %assert even does a stack dump.
ghost.exe -ir
... is all you need to do sector-sector copy.
As in, find posts to mod UP and if you can't, don't mod at all?
Perhaps it is because it's possible that this post has been entirely fabricated?
I think I'm going to reply to any anon post that is modded down for no reason.
Please mods, read the modding guidelines?
Why do people waste mod points modding down ACs who aren't even trolling instead of modding up the good posts?
E.G.:I was trying to look for the iptables file under Slack (RH keeps it at /etc/sysconfig/iptables), but Slack didn't have a sysconfig dir within /etc..and unless I overlooked it, it wasn't in the /etc directory.
/etc layout. Perhaps I'm stupid but grepping sysconfig directory matches three different files where I have I may possibly put config info for for eth0. I can't do "man eth-cfg" to learn how to edit these files anyway. In Debian, I can "man" interfaces (found in /etc/network/interfaces), modules (found in /etc/modules), sources.list (found in /etc/apt/sources.list) and so on... you get the picture. Last time I installed RedHat, I couldn't even man XF86Config?!
/var/lib/iptables/*. Granted, I only found that out by peeking in /etc/init.d/iptables.
;-)
I'm a Debian guy. Damn I hate the RH
And I still don't know exactly where exactly do I put a list of modules I want loaded at boot time in RH.
Not sure where the iptables files are in slack, but in Debian they are in
Each to their own I guess. I still end up having to fix RedHat boxes, but it annoys me... a lot
Regarding auto-detection of USB hardware and so on - installed Knoppix on a friend's Japanese Sony Vaio (after finding the right boot parms and a failed attempt at getting RH9 to work, his choice), The HD-installed Knoppix does quite a nice job of detecting/setting up plug 'n play hardware.
- Paul