#avr | Logs for 2015-12-20

Back
[05:45:03] <Jartza> hello
[07:58:45] <lald> Good afternoon
[08:33:11] <Jartza> that
[08:41:17] <Lambda_Aurigae> morning.
[08:41:43] <Jartza> morning :)
[08:42:17] <Jartza> Lambda_Aurigae: https://youtu.be/Y2gl3R3jzjs
[08:42:18] <sabor> good evening :)
[08:42:50] <Jartza> now, all the features that were in 32*14 are also in 32*16 version :)
[08:43:02] <Lambda_Aurigae> kewl.
[08:43:21] <Jartza> https://github.com/Jartza/octapentaveega
[08:43:36] <Jartza> also code updated to master and pcb files added
[08:43:50] <Lambda_Aurigae> awesome.
[08:44:12] <Lambda_Aurigae> maybe I'll write up a hackaday post and see if I can get it front paged.
[08:44:50] <Jartza> well the blog post is still missing
[08:45:03] <Jartza> I'd rather wait 'till that :D
[09:05:35] <Lambda_Aurigae> hehe.
[09:06:43] <Jartza>
[09:06:50] <Jartza> ooos
[09:34:49] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxQ1luNFhwcXl3QjA/view
[09:34:53] <Jartza> that's the whole charset now
[10:51:10] <anonnumberanon> Hi. Sup.
[10:53:26] <Jartza> not much
[10:53:33] <Jartza> got the VGA working nicely with 32x16 characters
[10:53:35] <Jartza> so happy
[10:54:17] <anonnumberanon> I have been trying to use an nrf24l01 to receive data at each loop and then do compicated timer-sensitive work after that. That task is being messed with by the nrf24l01. Has anyone foumd a solution to keep that radio from doing things while it isnt supposed to?
[10:55:15] <anonnumberanon> Jarta man thats awesome. u coonected a vga cable to avr to print on a monitor? I want to do that some day .
[10:55:24] <anonnumberanon> Jartza
[10:57:22] <Jartza> yes, I generate VGA
[10:57:25] <Jartza> on attiny85
[10:57:26] <Jartza> :)
[10:57:51] <Jartza> https://github.com/Jartza/octapentaveega
[10:57:55] <anonnumberanon> awesome, really
[10:57:57] <Jartza> there's links to pics'n'videos
[10:58:32] <anonnumberanon> how much max resolution can you send?
[10:58:42] <Lambda_Aurigae> it's text only.
[10:58:46] <Lambda_Aurigae> 32x16 characters.
[10:59:02] <Lambda_Aurigae> monochrome with one attiny85....8 color with 3 of them.
[10:59:19] <anonnumberanon> but characters are drawn with pixels aren,t they.
[10:59:24] <Lambda_Aurigae> yes.
[10:59:36] <Lambda_Aurigae> but he can't draw full graphics due to memory limitations.
[10:59:45] <Lambda_Aurigae> only 512 bytes of ram in that chip after all.
[10:59:57] <anonnumberanon> what kind. the sram?
[11:00:03] <Lambda_Aurigae> yes, the sram
[11:00:28] <anonnumberanon> ahh i see.
[11:00:59] <Jartza> yea. but as the font is 6x10 pixels, the "nominal resolution" is still 192x160
[11:01:00] <Lambda_Aurigae> technically he is drawing 192*160 pixels.
[11:01:02] <anonnumberanon> why must the ram be used for this though? does it?
[11:01:11] <Lambda_Aurigae> have to have some kind of frame buffer.
[11:01:28] <Jartza> anonnumberanon: because I want to update that text easily, using UART... with ansi-escapes
[11:01:32] <Lambda_Aurigae> something tohold the image.
[11:01:35] <Jartza> for static text, no need
[11:01:52] <Jartza> I could've just stored 8 screens to flash and just change them, would've been much easier
[11:01:54] <Lambda_Aurigae> could go much more with static text but then it's just a demo and not useful.
[11:02:58] <Lambda_Aurigae> need a graphic font on there still Jartza
[11:03:14] <Jartza> you think?
[11:03:28] <Lambda_Aurigae> solid graphic like some of the graphics from the commodore world.
[11:03:32] <anonnumberanon> so the frame buffer is always limited by sram?
[11:03:45] <Jartza> yes, unless you use external RAM
[11:03:51] <Lambda_Aurigae> anonnumberanon, yeah..that's what holds the image you are trying to draw on screen.
[11:04:06] <Jartza> my screen buffer holds the characters on screen. font is stored in flash. code transforms the combination of those two into pixels
[11:04:18] <anonnumberanon> can u connect external ram?
[11:04:27] <Jartza> so I draw 30720 pixels with 512 bytes of ram
[11:04:28] <Lambda_Aurigae> ask this "u" person.
[11:04:41] <Lambda_Aurigae> external ram would require more i/o pins.
[11:04:42] <Jartza> anonnumberanon: depends of the chip.
[11:04:53] <Jartza> attiny85 has 8 pins, so pretty much "no" :)
[11:05:17] <Lambda_Aurigae> he could have used a larger chip, like, an atmega1284p with 16K bytes of ram and done lots of graphics.
[11:05:37] <Lambda_Aurigae> this was a work in how much he could get out of an attiny85 with only 512 bytes of ram and 8K of program flash.
[11:05:37] <Jartza> of course
[11:05:40] <Jartza> that's not the point :D
[11:06:02] <Lambda_Aurigae> and make something useful.
[11:06:07] <Jartza> Lambda_Aurigae: well. now that you mentioned the graphics font... my original plan of 2x4 pixels is kinda flawed
[11:06:12] <Jartza> with 6x10 pixel font. d'oh
[11:06:27] <Jartza> make vertical pixels 2,3,2,3 pixels high? :)
[11:07:07] <Lambda_Aurigae> you could go 2x4 giving you 8 pixels per character.
[11:07:38] <Jartza> yes that was my idea. like TRS-80
[11:07:41] <Lambda_Aurigae> hmm...might be more than you have for a font though...to cover every combo you need 255 characters.
[11:07:42] <anonnumberanon> i looked up memory but it was eeprom is that fast like sram? not as? still fast enough ?
[11:07:49] <Lambda_Aurigae> eeprom is slow.
[11:07:54] <Jartza> (except TRS was 2x3, but same idea)
[11:08:10] <Jartza> yeah, eeprom is too slow for vga
[11:08:12] <Lambda_Aurigae> and writing to eeprom is a bitch in the context of this system because it takes so much time.
[11:08:29] <Jartza> I thought about using EEPROM as "static header" in my vga
[11:08:37] <Jartza> but waaaaay toooooo slooooooow
[11:09:01] <Lambda_Aurigae> anonnumberanon, I was able to use an external serial sram to generate vga with directly by writing data to it then just clocking the data out at high speed...it works but is kinda klunky still.
[11:09:08] <anonnumberanon> i mean thats the only memory i found for avr on digikey..
[11:09:48] <Jartza> again it depends of avr
[11:09:48] <Lambda_Aurigae> fuck digikey.
[11:09:58] <Lambda_Aurigae> look at the datasheets for the individual chips.
[11:10:08] <Jartza> some AVRs have external memory controllers
[11:10:23] <anonnumberanon> na i use just 328
[11:10:27] <Jartza> and then you probably have choice of either sram or sdram
[11:10:33] <Lambda_Aurigae> Jartza, just so you know, that external memory is kinda slow.
[11:10:39] <Lambda_Aurigae> no choice either
[11:10:40] <Lambda_Aurigae> sram only
[11:10:43] <Lambda_Aurigae> or flash.
[11:10:47] <Lambda_Aurigae> no dram of any kind.
[11:11:03] <Lambda_Aurigae> avr doesn't have provisions for dram refresh.
[11:11:56] <anonnumberanon> flash, like?
[11:12:07] <anonnumberanon> an sd card reader?
[11:12:09] <Jartza> Lambda_Aurigae: xmega supports sdram iirc
[11:12:11] <Lambda_Aurigae> now, it IS possible to connect a 30pin or 72pin simm to an avr and bitbang the refresh but that takes a lot of process time.
[11:12:20] <Lambda_Aurigae> anonnumberanon, no...parallel flash chip.
[11:12:27] <Jartza> with DMA too
[11:12:32] <Lambda_Aurigae> SD card is a totally different aminal.
[11:12:46] <Lambda_Aurigae> Jartza, yeah, but I don't consider xmega to be a real AVR....but, I'm a bastard.
[11:13:31] <Jartza> yeah
[11:15:45] <Jartza> Lambda_Aurigae: but yeah. 2x4 pixel translates lousy to 6x10 pixel character
[11:16:08] <Jartza> so vertical pixels need to be like 3x2 and 3x3 pixels alternating
[11:16:14] <Lambda_Aurigae> 3x2 pixels per pixel.
[11:16:24] <Lambda_Aurigae> oh..duh.
[11:16:31] <Lambda_Aurigae> I'm thinking 6/10
[11:16:32] <Jartza> yeah. that'll make 6x8 :D
[11:16:54] <Lambda_Aurigae> and 2x5 would be bad as you need more characters in the font.
[11:17:33] <Lambda_Aurigae> heck, even if you went 3x5 pixels per pixel that would be useful.
[11:17:36] <Jartza> maybe I just alternate that first pixel row is 2 pixels high, second 3 pixels, 2 pixels, 3 pixels....
[11:18:26] <Jartza> current font is 6x10 because I draw 16 rows of characters, drawing each pixel vertically 3 times
[11:18:30] <Jartza> 3 x 10 x 16 = 480
[11:18:30] <Lambda_Aurigae> dangit...should have used an 8x8 pixel font dude! heheh
[11:18:46] <Jartza> no time to draw 8 pixels horizontally
[11:18:52] <Lambda_Aurigae> I know.
[11:19:10] <Jartza> and that 480 was nice because it fills the screen
[11:19:20] <Lambda_Aurigae> I just got so used to 8x8 on the commodore that that is what I think of when I draw fonts.
[11:20:12] <Jartza> yeah
[11:20:42] <anonnumberanon> hah u used the commodore
[11:24:08] <Lambda_Aurigae> still do.
[11:24:16] <Lambda_Aurigae> have vic-20, c-64, and c-128 that all run.
[11:24:23] <Lambda_Aurigae> and I love playing games on them.
[11:25:34] <Lambda_Aurigae> would love to get a trs-80 and apple-II as well.
[11:26:08] <anonnumberanon> im building a combat robot around avr and servos
[11:26:20] <Lambda_Aurigae> I even have an adapter to connect the commodore disk drive port to a PC so I can use the PC as a giant harddrive for the commodore.
[11:26:51] <anonnumberanon> lol man that's retro-nice
[11:26:59] <Lambda_Aurigae> I am working up plans for swarm combat bots using pic32mx270f256b chips.
[11:27:18] <anonnumberanon> you should copper and wood-plate the computer case
[11:27:21] <Lambda_Aurigae> am betting your combat bot will be more of a remote controlled thingie?
[11:27:36] <Lambda_Aurigae> or will it be autonomous?
[11:27:37] <anonnumberanon> swarm? what size?
[11:27:59] <Lambda_Aurigae> plans are to build 12 bots so we can do swarms of 3 to 6.
[11:28:07] <anonnumberanon> no its faster with RC style and more fun imo
[11:28:16] <Lambda_Aurigae> have them "fight" each other for resources.
[11:28:38] <anonnumberanon> gonna be 80 watts so lots of speed and power for 16" bot
[11:29:05] <anonnumberanon> yesh ur project is nice
[11:29:15] <Lambda_Aurigae> put out food packs(rechargeable battery packs) in the area and the bots would use manipulators to collect them...and little tasers(basically directional diodes) to fight.
[11:29:36] <Lambda_Aurigae> I find the RC battle bots to be rather boring.
[11:29:42] <Lambda_Aurigae> programming such is simple.
[11:29:48] <Lambda_Aurigae> control in-motor out.
[11:30:02] <Lambda_Aurigae> where as programming autonomous bots is much more of a challenge.
[11:30:06] <anonnumberanon> size of bots? will be on tank tracks?
[11:30:20] <Lambda_Aurigae> wheeled and about 20CM on a side.
[11:30:53] <anonnumberanon> thats pretty big
[11:31:02] <Lambda_Aurigae> I'm working up the plans now and some preliminary software
[11:31:09] <Lambda_Aurigae> will collect the parts over the next few months.
[11:31:34] <Lambda_Aurigae> then a bunch of kids and I and maybe their parents will assemble and program them and have little wars.
[11:31:57] <Lambda_Aurigae> I am using steppers and other bits from old copiers so they can't be too small.
[11:32:14] <Lambda_Aurigae> got a bunch of nicad batteries to use for the food source
[11:32:35] <anonnumberanon> ur work at a school?
[11:32:40] <Lambda_Aurigae> even going to make a couple of growing food sources...basically a box that will push out a battery every so often.
[11:32:44] <Lambda_Aurigae> huh?
[11:33:01] <Lambda_Aurigae> sorry, but, "ur" is not a word and even the sound makes no sense in that sentence.
[11:33:29] <Lambda_Aurigae> guessing you are asking where I work. I fix copiers for a living.
[11:33:33] <Lambda_Aurigae> and teach for a hobby.
[11:33:54] <anonnumberanon> meh ive learned tons making my bot the user input will be minimal. algorithms for staying standing , everywhere, variable walk speed. controlled with radio gamepad
[11:34:46] <anonnumberanon> sorry its really hard to type im on my phone
[11:35:07] <anonnumberanon> in the bus
[11:35:27] <Lambda_Aurigae> so, you can type out every word but "you", "you're" and "your"?
[11:35:38] * Lambda_Aurigae is just being a bastard, as usual.
[11:36:01] <Lambda_Aurigae> time to go shower.
[11:36:03] <Lambda_Aurigae> laters.
[11:37:12] <anonnumberanon> the apostrophe takes a keybord permutation that is a pain to manage
[11:38:35] <Jartza> hmmh
[11:39:03] <Jartza> well... maybe I'm ok with vertical pixel height alternating
[11:40:27] <anonnumberanon> Jartza now make a spinning cube.
[11:45:49] <Jartza> with characters?
[11:45:55] <Jartza> I don't think so :)
[11:46:12] <Jartza> this is not a demo or game platform. My aim was to get as much text on screen as possible.
[11:47:40] <anonnumberanon> why a large quantity of text? isnt it more useful to send whatever you need and fast instead?
[11:50:26] <Jartza> anonnumberanon: sure. tell me how many pixels you can render to screen using 512 bytes of ram :)
[11:51:04] <Jartza> and how fast will 9600bps uart send them
[11:51:25] <Jartza> sending "whatever to screen" yes, if making generic vga-adapter
[11:51:49] <Jartza> the goal for this project was a) to get VGA out of this tiny chip b) get as much text as possible on screen from this tiny chip, c) hack value
[11:57:01] <anonnumberanon> Yeah well now it would be even better to be able to receive characters as well, from an external source. Or not enough pins? By the way can you send thebphotos again? Sorry im on phone its hard.
[11:59:36] <Jartza> still. 8 pins. vcc+gnd eat 2. reset eats one. oscillator eats one.
[11:59:39] <Jartza> so I'm left with 4 pins
[11:59:48] <Jartza> vsync + hsync + pixel + uart :)
[12:00:33] <Jartza> pics'n'video here https://github.com/Jartza/octapentaveega
[12:00:39] <Jartza> (or links to those in README)
[12:02:09] <anonnumberanon> oscillator doesnt take 2 pins?
[12:04:52] <anonnumberanon> link u gave HAS Uart
[12:06:36] <Jartza> crystal takes 2 pins
[12:06:46] <Jartza> clock oscillator takes 1 pin
[12:06:56] <Jartza> (that module which has vcc+gnd+enable+clockout)
[12:07:13] <Jartza> anonnumberanon: yes, it does have UART, like I said. 9600bps
[12:07:34] <Jartza> but yeah. 9600bps. approximately 960 characters per second.
[12:07:45] <Jartza> which makes about 1.8 fps :)
[12:23:52] <anonnumberanon> thats 40 characters in live mode at all times on the screen
[12:24:33] <anonnumberanon> why isnt it at 115200 baud, the 8mhz microcontroller clock limits baudrate?
[12:24:41] <Jartza> well
[12:25:28] <Jartza> plenty of reasons :D
[12:25:42] <Jartza> first. the chip doesn't have UART. it's bit-banged.
[12:25:52] <Jartza> secondly. MOST of the cpu time goes to generating the VGA
[12:26:02] <Jartza> because there is no VGA-output in those chips either
[12:26:15] <Jartza> 640x480 VGA has pixel clock of ~25.2Mhz
[12:27:08] <Jartza> the the MCU doesn't really stay up with that
[12:27:19] <cehteh> you dont use the USI?
[12:27:27] <Jartza> yes, drawing the pixels
[12:27:34] <cehteh> lol
[12:27:36] <cehteh> ok
[12:27:46] <Jartza> also. all of the memory is used for screen buffer.
[12:27:49] <cehteh> there goes your serial :D
[12:27:54] <Jartza> so you can't even use interrupts
[12:28:13] <Jartza> if you know how interrupt works. it stores the current PC into stack. I have no stack :D
[12:28:24] <Jartza> it would just mess up the text on screen
[12:28:51] <cehteh> hum how do interrupts work on the tiny11 which has no ram?
[12:29:10] <cehteh> no interruupts there?
[12:29:29] <Jartza> no idea
[12:29:34] <Jartza> maybe it stores into registers instead?
[12:30:09] <cehteh> i never used one .. and never plan to do so
[12:30:35] <Jartza> oh wait.
[12:30:40] <Jartza> might be that cpu registers are memory mapped
[12:30:57] <Jartza> so actually it MIGHT be possible to use interrupts by setting the stack to point to cpu registers?
[12:31:22] <cehteh> i just check the datasheet .. looks like it has very limited interrupt capabilities
[12:32:13] <Jartza> anyhow. I'm running in very tight busy-loop having hard time even drawing the pixels within VGA specifications.
[12:32:29] <Jartza> also I'm barely staying up with 9600bps uart and all the data I get from there
[12:32:36] <Jartza> good luck sampling with 115200 :D
[12:32:49] <Jartza> anonnumberanon: but hey. it's open source, the code is there. you're welcome to try
[12:32:56] <Jartza> I would LOVE to see it do even 19200bps
[12:33:02] <Jartza> believe me, I tried.
[12:33:16] <Jartza> but that old fucker Nyquist was right
[12:33:25] <cehteh> usually i prefer 9600 baud too, its stable, puts less burden on the timing, and fast enough for simple cli interfaces
[12:33:40] <Jartza> loop which repeats at 31450Hz isn't fast enough to sample 19200 :(
[12:33:45] <anonnumberanon> I need to make uart transfers. Dont know how yet. Need to send 10 integers as fast as possible with 115200.
[12:34:03] <cehteh> even if i*could* make the baudrate faster, when 9600 is sufficient i just use it
[12:34:09] <anonnumberanon> Dont know if need uart or usart.
[12:34:16] <Jartza> either
[12:35:10] <cehteh> anonnumberanon: the tinys have a USI .. which is even simpler than UART ..
[12:35:42] <anonnumberanon> also i can pack the data cause the ints are only 10bit sficant.ign
[12:36:30] <anonnumberanon> What is the difference?
[12:38:01] <anonnumberanon> and i meant 13bit not 10bit
[12:38:06] <cehteh> less hardware support more software needed .. its barely more than a shift register which you can connect to an output
[12:38:43] <anonnumberanon> does it take up timers
[12:39:29] <Jartza> well yea. USI is just shift register connected directly to IO pin + 4-bit counter and interrupt-support
[12:39:32] <Jartza> less is still code
[12:41:51] <LeoNerd> Talking e.g. RS232 over USI is a little trickier than you might think, because the bits come out in the wrong order
[12:41:55] <LeoNerd> You'll have to bit-reverse it
[12:42:39] <cehteh> wtf :D
[12:43:00] <cehteh> you cant reverse the shift direction?
[12:43:26] <cehteh> i only glimpsed at the datasheet wanted to save serial implementaiton on that for later, working on megas now :D
[12:44:01] <anonnumberanon> does uart use interrupts?
[12:44:16] <cehteh> you 'can' ise interrupts
[12:44:20] <cehteh> its up to you
[12:44:39] <anonnumberanon> dont want to
[12:45:03] <Lambda_Aurigae> attiny11 should have a 32 byte stack I do believe.
[12:45:22] <anonnumberanon> man i gorgot to try and cli() sei() to keep my radio from interfering with my code
[12:47:01] <cehteh> Lambda_Aurigae: i thought it has no sram, only registers
[12:47:06] <Lambda_Aurigae> yeah.
[12:47:14] <Lambda_Aurigae> the registers are the sram and are the stack
[12:47:42] <cehteh> maybe .. i have no interest in anything smaller than the tiny13
[12:47:57] <cehteh> too much trouble and not cheaper
[12:49:12] <cehteh> hah tiny11 doesnt even have ISP only HV programming
[12:49:15] <Lambda_Aurigae> I don't even see the tiny11 or tiny12 on atmel's site as current anymore.
[12:50:30] <cehteh> yes there isnt much benefit using them for very small things there are better cheaoer µC for anything else you can use a 25 and up with only few cents price difference
[12:50:43] <cehteh> and *much* easier development
[12:51:11] <anonnumberanon> even as smd and in numbers?
[12:51:42] <Lambda_Aurigae> I suppose someone has a use for them
[12:51:47] <Lambda_Aurigae> or atmel wouldn't still be making them.
[12:51:55] <Lambda_Aurigae> sometimes a few pennies makes a difference.
[12:51:55] <cehteh> sure
[12:52:05] <Lambda_Aurigae> and going to the 6pin package saves some space on the board.
[12:52:34] <Lambda_Aurigae> I could see using them for blinkylight controllers on a string of lights or something.
[12:52:50] <cehteh> then you can go for a tiny4 :D
[12:52:55] <Lambda_Aurigae> VCC, GND, R, G, B, Data.
[12:53:15] <Lambda_Aurigae> tiny4, 5, 9, and 10 are the same with different amounts of memory...and 5/10 have adc.
[12:53:40] <cehteh> for blinkenlights you usually dont need ADC
[12:53:46] <Lambda_Aurigae> yup.
[12:54:07] <cehteh> well maybe you want to measure vcc for
[12:54:45] <Lambda_Aurigae> $0.40 each in quantity of 1000, one could make a fun string of holiday lights.
[12:54:51] <Lambda_Aurigae> with individually addressable lights.
[12:55:34] <anonnumberanon> need a machine for this many
[12:56:17] <anonnumberanon> or else its just like playing Runescape smithing...
[12:56:17] <cehteh> Lambda_Aurigae: then you rather buy this addressable LED's
[12:56:44] <cehteh> dunno what controller they embed ,, but thats simpler and cheaper
[12:57:53] <Lambda_Aurigae> buying direct would be cheaper.
[12:57:54] <cehteh> while with tinys you have some advantage to make some induvidual control program for each, but i just read they have only 2 PWM units .. bleh, software pwm for the 3rd color
[12:58:16] <Lambda_Aurigae> I was thinking full rgb control with blinky speed control and such.
[12:59:00] <cehteh> but 16bit counter ..
[13:01:10] <cehteh> are there any atmels which have more than 2 PWM/comparematch units on a single counter?
[13:01:16] <Lambda_Aurigae> dunno.
[13:01:19] <Lambda_Aurigae> would have to dig.
[13:01:21] <cehteh> i never seen
[13:01:37] <cehteh> well dont, i am just curious
[13:01:38] <Lambda_Aurigae> lately I only use the atmega1284p and the pic32mx270f256b chips.
[13:01:54] <Lambda_Aurigae> as I have piles of both gotten cheaply.
[13:02:02] <cehteh> but having 4 PWM units would be nice sometimes
[13:02:15] <Lambda_Aurigae> just got some pic32mz chips too but those are tqfp100 and I gotta get them on boards.
[13:02:19] <Lambda_Aurigae> anyhow, time to go to town.
[13:04:10] <Jartza> cehteh: no, you can't reverse USI shift register :P
[13:07:13] <cehteh> ohnoes :)
[13:17:29] <rue_bed> 324 has 6 pwm
[13:17:55] <cehteh> on one timer?
[13:19:01] <rue_bed> iirc y
[13:19:27] <rue_bed> } 1
[13:19:34] <rue_bed> | 2
[13:23:16] <cehteh> no 3 timers each 2 PWM units
[13:24:07] <cehteh> thats the same as the 328
[13:28:31] <rue_bed> ?
[13:28:36] <rue_bed> the 328 only has 4 channels?
[13:32:19] <cehteh> from what i see it has timer0 (8bit) timer1 (16bit) and timer2 (8bit) each with 2 compmatch unit
[13:32:20] <cehteh> s
[13:33:45] <cehteh> what i asked was if there is a atmel with a timer which has more than 2 compmatch units
[13:37:00] <Jartza> hmmh
[13:37:29] <Jartza> guess what this is?
[13:37:29] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxdFFCYm82RHROcHM/view
[13:37:30] <Jartza> :D
[13:39:57] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxMXVEWkxMRUpOMEE/view
[13:45:30] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxcWJ5ZFJVc0MzSlU/view
[13:47:11] <LeoNerd> There are a few that are starting to get 3 compare outputs now; A B and C
[14:01:36] <rue_house> Jartza, someone trying to generate composite video with a chip they aren't sure of the memory mapping of?
[14:03:56] <Jartza> rue_house: ?
[14:04:06] <Jartza> no, its my OctaPentaVeega in "graphics" mode :D
[14:04:20] <Jartza> either 32x16 characters on screen or 64x64 pixel graphics
[14:05:45] <tpw_rules> why don't you have a diagram of a butt then
[14:09:01] <rue_house> is it NTSC?
[14:10:38] <tpw_rules> VGA
[14:10:46] <tpw_rules> 85 VGA is what the name means
[14:10:55] <tpw_rules> 640x480 iirc>
[14:14:05] <Jartza> it's VGA yes
[14:14:15] <Jartza> attiny85 vga
[15:17:14] <Jartza> maybe graphics always upper part of the screen and text lower
[15:18:27] <Jartza> <ESC>[row]
[15:18:31] <Jartza> maybe that one?
[15:22:26] <Jartza> that would tell where text starts
[15:22:29] <Jartza> default of course would be 0
[15:22:42] <Jartza> = full screen text
[16:24:46] <Jartza> hah
[16:39:50] <Jartza> https://www.youtube.com/watch?v=1OlIwmxtwQM
[17:36:11] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxRE4zZE5maU1PeUU/view
[17:36:59] <Lambda_Aurigae> nifty
[17:37:13] <Lambda_Aurigae> isn't it Hello rather than Helou ?
[17:37:33] <Jartza> :D
[17:37:38] <Jartza> of course
[17:37:43] <Jartza> that's a finnish joke
[17:37:52] <Jartza> "rally english" we call it in finland
[17:38:30] <Jartza> https://www.youtube.com/watch?v=-BI5wpYHH4E
[17:38:36] <Lambda_Aurigae> hmmm.
[17:39:06] <Jartza> that shows the upper part being "graphics", then I'm moving the text-mode start row
[17:39:15] <Jartza> so you can see it either as text, or as graphics :)
[17:39:22] <Jartza> yea. upper part of screen is always graphcis
[17:54:40] <Jartza> https://www.youtube.com/watch?v=97m79zcx0Dk
[17:55:46] <Jartza> that graphics mode is one option
[17:55:51] <Lambda_Aurigae> looking good.
[17:56:18] <Jartza> another option would make another font which includes more "graphics primitives"
[17:56:24] <Jartza> and change the font in the middle of screen
[18:08:47] <cehteh> apropos .. i am thinking about 'tagged' queues for my (serial) io lib .. that are queues where one can push pointers (progmem) and binary data instead plain chars. should save a lot space for tx buffers
[18:09:01] <Jartza> https://www.youtube.com/watch?v=97m79zcx0Dk
[18:09:03] <Jartza> argh
[18:09:20] <Jartza> yea, you saw that already
[18:16:08] <Jartza> anyhow
[18:16:26] <Jartza> 64x64 pixels might not be that useful... but as a concept I had to try
[18:18:47] <cehteh> how much flash do you have left?
[18:20:33] <Jartza> Assembly complete with no errors.
[18:20:33] <Jartza> Segment usage: Code : 3316 words (6632 bytes) Data : 512 bytes EEPROM : 0 bytes
[18:20:39] <Jartza> oops
[18:20:48] <Jartza> Code : 3316 words (6632 bytes)
[18:20:54] <Jartza> Data : 512 bytes
[18:21:37] <Jartza> but of that, 5kB is font data
[18:21:53] <Jartza> 2.5kB for "real font" and because I made it the easy way, 2.5kB "pixel font"
[18:21:57] <Jartza> which is of course generated
[18:22:23] <cehteh> yeah i know .. just wondering if you could add more font data for graphic fonts
[18:24:50] <Jartza> well I could replace that graphic mode with another font
[18:24:51] <cehteh> and optimize the symetric cases for the 'pixel' font
[18:24:56] <cehteh> but that needs cycles :)
[18:25:10] <Jartza> yeah
[18:25:16] <Jartza> I'm already over-engineering this :D
[18:25:26] <cehteh> in some cases only reading the font data in another order
[18:25:47] <cehteh> this whole project is about overengineering so stop complaining
[18:27:57] <Jartza> I'm already reordering my font data for optimized reading :)
[18:28:24] <Jartza> for each horizontal row I only need to change the low byte for flash reading
[18:28:39] <cehteh> :)
[18:35:25] <Jartza> or I can make the other font comic sans! :D
[18:37:08] <Lambda_Aurigae> or a bargraph font.
[18:38:09] <cehteh> what was your font matrix 5x8?
[18:38:17] <Lambda_Aurigae> 6x10
[18:39:33] * cehteh thinks about some 'pixel' font which includes diagonals, could draw graphics much smoother
[18:47:48] <Jartza> yeah. 6x10
[18:48:10] <Jartza> but the problem is, how my engine is done, the last pixel column of each character is veeeery wide
[18:49:44] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxWHJYU2ZmVWJ5b1E/view?usp=sharing
[18:52:41] <Lambda_Aurigae> nice.
[18:56:21] <Jartza> not sure
[18:56:34] <Jartza> this blocky graphics-mode doesn't quite feel like "worth it" :)
[18:56:59] <Lambda_Aurigae> then go back to pure text.
[18:57:06] <Jartza> or another font
[18:57:13] <Jartza> with some graphics "primitives"
[18:57:15] <Jartza> like c64 did
[18:57:22] <Lambda_Aurigae> yup.
[18:58:27] <cehteh> get a proper chip with more ram and implement a full framebuffer, pixel by pixel
[18:58:35] <Jartza> ahh
[18:58:41] <Lambda_Aurigae> bah..
[18:58:41] <Jartza> that's what people always suggest
[18:58:43] <Lambda_Aurigae> what's the fun in that?
[18:58:45] <cehteh> haha
[18:58:46] <Jartza> yep
[18:58:56] <cehteh> i know that you saied that
[18:59:05] <Jartza> the whole point from the beginning wasn't to make the best VGA there is :D
[18:59:18] <Jartza> if it was, who the fuck in their right mind would choose attiny85? :)
[19:00:38] <Lambda_Aurigae> we never accused you of being in your right mind Jartza ...at least, I never did.
[19:01:07] <Lambda_Aurigae> I still think what you have accomplished is amazing.
[19:01:15] <cehteh> ah .. ok .. just instead 3 attinys for color .. use tinys for tiles or lines .. with enough tinys you should be able to implement a biggier framebuffer
[19:01:40] <Lambda_Aurigae> I think you should add another attiny85 to do a sprite overlay.
[19:01:53] <cehteh> of course :)
[19:02:25] <apo_> add 31 more and make a videogame cluster
[19:02:40] <apo_> then implement some old NES game for it
[19:03:00] <apo_> or a new one, I don't care =P
[19:04:13] <cehteh> could you get higher res when you add more tinys which interleave thr output signal? .. how much tinys do you need to beat a current nvidia graphics card? :D
[19:04:35] * cehteh runs
[19:05:11] <Jartza> last time I checked I still had like 120 attinys
[19:05:19] <Jartza> how about wiring them all together?
[19:05:22] <Jartza> :D
[19:05:39] <Lambda_Aurigae> attinycluster!
[19:05:54] <Jartza> cluckfuster
[19:06:03] <Jartza> :D
[19:06:53] <Lambda_Aurigae> octapentacentumviginti
[19:08:47] <apo_> cehteh: if you stagger their clock, possibly
[19:09:11] <apo_> maybe even without doing such funky stuff
[19:09:15] <apo_> ask Jartza =P
[19:10:55] <Jartza> of course this graphics mode could be used to draw HUGE text
[19:11:39] <apo_> "HEY! LISTEN!"
[19:11:47] <apo_> or "OBEY"
[19:15:28] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxdHFBck5hY2NQclk/view
[19:15:34] <Jartza> hmm
[19:15:39] <Jartza> maybe it's not totally useless?
[19:17:32] <Jartza> you could have 8x8 BIG characters :)
[19:19:53] <cehteh> i'd like that. having an old monitor as HUGE display for some serial data, maybe from multimeter or so is imo one of the most serious useses of your project
[19:20:38] <cehteh> my DMM has no serial out, but it would be just great when that works
[19:20:58] <Lambda_Aurigae> I'm using it as a display controller for an atmega1284p running a modified picoC interpreter.
[19:21:16] <cehteh> and since it only sends a few characters you have some processing cycles over to do some work (parsing formatting)
[19:21:39] <Jartza> Lambda_Aurigae: using what?
[19:21:48] <Lambda_Aurigae> Jartza, octapentaveega
[19:21:52] <Jartza> oh, nice
[19:21:59] <Jartza> you should update to the latest firmware :)
[19:22:09] <Lambda_Aurigae> I plan to.
[19:22:27] <Lambda_Aurigae> just haven't gotten to the shop this weekend..been sick.
[19:22:34] <Jartza> :(
[19:26:31] <Jartza> haven't tried the graphics in color-mode yet
[19:26:52] <Jartza> every 2x4 pixel block can only has one foreground and one background color, though
[19:26:56] <Jartza> so it's a limitation
[19:27:03] <Lambda_Aurigae> commodore did similar.
[19:27:42] <Jartza> yea
[19:31:09] <Jartza> argh
[19:31:17] <Jartza> color are not in sync anymore :D
[19:31:27] <Lambda_Aurigae> oh NO!
[19:31:38] <Jartza> need to fix that again
[19:32:17] <Jartza> I wonder why, I think I didn't change anything that would affect color sync
[19:32:21] <cehteh> about interleaving signals i didnt meant colors, but its a start
[19:32:28] <Jartza> they are very close, though
[19:32:45] <cehteh> do you drive all tinys from the same osc?
[19:32:54] <Jartza> yes
[19:33:28] <cehteh> very close .. means one instruction difference?
[19:33:35] <cehteh> if less then you have a problem :D
[19:39:24] <Jartza> nah, synced them again
[19:39:34] <Jartza> I changed the startup-sequence... d'oh :)
[19:41:03] <apo_> so how many bits do your colours have? :D
[19:41:23] <Jartza> 1
[19:41:28] <Jartza> per color :D
[19:41:31] <Jartza> on/off
[19:42:07] <Jartza> people don't seem to grasp that I'm drawing 512 characters on MCU that has 512 bytes of RAM :)
[19:42:20] <Jartza> or 64x64 pixel graphics
[19:42:26] <Jartza> = 512 bytes :)
[19:42:30] <apo_> 1 bit mulberry, 1 bit orchid, 1 bit rose, 1 bit olive, 1 bit sapphire blue, 1 bit violet, ...
[19:42:54] <Lambda_Aurigae> RGB
[19:42:59] <apo_> :(
[19:43:00] <Lambda_Aurigae> 3 bit color.
[19:43:33] <Jartza> yes, but 1 bit per color
[19:43:50] <Lambda_Aurigae> could, in theory, add 3 more chips and get 2 bit per color!
[19:43:51] <Jartza> RGB111
[19:44:01] <Jartza> Lambda_Aurigae: in practice, too :)
[19:44:01] <apo_> RGB1!1
[19:44:22] <Jartza> just change resistor values
[19:44:28] <Lambda_Aurigae> yup.
[19:47:50] <apo_> Good night, my little ponies
[19:48:20] <Lambda_Aurigae> I prefer careless bears.
[19:50:51] <Jartza> well
[19:50:59] <Jartza> the graphics mode in colors
[19:51:00] <Jartza> not quite
[19:51:24] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxc1NIRUNkWUsyaU0/view
[19:51:37] <Jartza> though I admit it looks funny :)
[19:57:41] <Jartza> I need to change the font a bit
[19:57:48] <Jartza> ...and code
[20:09:49] <Jartza> ouch yea
[20:09:58] <Jartza> of course the graphics works strangely
[20:10:01] <Jartza> well
[20:11:06] <Jartza> darn
[20:15:12] <Jartza> the foreground works. background doesn't
[20:19:51] <Jartza> it's also not easily fixable
[20:39:08] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxRDhYenFkdjI5bWs/view
[20:39:57] <Lambda_Aurigae> niiiice.
[20:41:24] <Jartza> yea. foreground color works. background doesn't
[20:41:34] <Jartza> might be a limitation that I'm willing to just live with :)
[20:42:54] <Lambda_Aurigae> werks fer me.
[20:43:20] <cehteh> bah .. now you made it imperfect :D
[20:45:39] <Jartza> if I want to fix it, I need to make it simpler
[20:45:45] <Jartza> like. only 3 selectable modes
[20:45:54] <Jartza> full text - split screen (50/50) - full graphics
[20:51:22] <Lambda_Aurigae> dag nabbit Jartza!!! Now I gotta port that to a chip with more memory so I can do full graphics mode..
[20:51:33] <Jartza> :D
[20:52:54] <Lambda_Aurigae> need 4K sram
[20:56:17] <Jartza> yeah
[20:56:19] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxWTlGT2prXzE3Sms/view
[20:56:31] <Jartza> trying to set background-color :P
[20:56:55] <Lambda_Aurigae> oops
[20:56:57] <Lambda_Aurigae> have fun.
[20:57:01] <Lambda_Aurigae> I'm off to beddyby.
[20:57:35] <Jartza> nice effect, but not intentional
[20:57:42] <Jartza> me too, it's 4:30am :P
[20:58:40] <Lambda_Aurigae> 8:30ish PM...half hour past bedtime.
[21:54:44] <cehteh> oh .. i just found out that avr-gcc supports (u)int24_t that could be useful sometimes
[22:32:30] <MarkX> hi
[22:32:43] <MarkX> anyone know if there is a channel for si lab chips?
[23:54:09] <rue_bed> and 32 bit, as a long long anyhow
[23:54:31] <rue_bed> I'v used them to do matches on 4 character command strings
[23:54:54] <rue_bed> play stop back frwd