#avr | Logs for 2014-09-01

Back
[00:08:03] <rue_shop3> if Brajer Vlado is here, I'm scorning your hd447880 library for the 6th year in a row
[01:02:00] <FoxGT> Yes, Tom_itx
[01:02:23] <FoxGT> One of my good friend's wants me to teach him. I recommended your programmer so he gave me money to order it for him.
[01:02:34] <FoxGT> But I can't find where to order.
[02:12:58] <xrlk> how much math do I need to know to learn avr
[02:16:21] <Fleck> xrlk: :D just to learn AVR - not much!
[02:16:48] <xrlk> okay, thanks mate
[02:26:08] <Valen> well you only need 2 numbers
[02:29:55] <bitd> Well that was quick <.<
[02:44:51] <Thrashbarg> uhhh huh...
[03:25:56] <ecilop> Does any one use avr-gcc?
[03:35:47] <dunz0r> I do.
[03:42:27] <twnqx> yeah, me too
[03:42:57] <twnqx> so i guess it's fair to say that someone does.
[03:55:25] <ecilop> I have some questons on avr-libc.
[03:55:45] <ecilop> Sorry form my bad english language. (I am russian)
[03:55:54] <ecilop> *for my bad..
[03:56:37] <ecilop> In makefile I used LDFLAGS += -Wl,-u,vfprintf -lprintf_min
[03:57:21] <ecilop> In source there is line: fprintf(file,"%04u",10);
[03:58:02] <ecilop> On output: "10". But must be: "0010"
[03:58:11] <ecilop> What's wrong?
[04:00:00] <Thrashbarg> ecilop: that is strange indeed
[04:00:21] <dunz0r> Could it be the -lprintf_min using some minimal version of print?
[04:00:23] <dunz0r> Just guessing
[04:00:38] <Thrashbarg> perhaps
[04:03:34] <Guest18559> yo! I'm using WDT & INT for sleep wakeup but no action will be taken by the ISR, do I still have to keep an ISR in my code? Target is atmega328p with AS6
[04:03:54] <ecilop> Yes, it's minimal version. But northing written about this limits
[04:05:05] <ecilop> Display of float point number is limited. Here is only unsigned short int
[04:07:09] <ecilop> Removing string with lprintf_min from makefile makes all OK, but size is larger
[04:27:10] <krysmin> Hello
[04:55:18] <dunz0r> ecilop: Yeah, lprintf_min indicates that it's using a minimal version of printf, therefore the size would increase.
[05:13:17] <ruslanpopov> re all
[05:15:38] <krysmin> Which stabilisator 3,3v is good?
[05:15:51] <ruslanpopov> ppl, why after changin CLKPR in firmware I can't reprogram ATtiny13A with avrdude?
[05:16:02] <ruslanpopov> LM1117-3.3?
[05:21:34] <ecilop> Руслан, что у тебя случилось?
[05:21:58] <ruslanpopov> тут можно на русском или в приват?
[05:22:07] <ecilop> на русском тут никого..
[05:23:09] * Xark squints at his monitor and then at his drink...I may have had enough...
[05:23:13] <ruslanpopov> у меня тинька работает на 9.6МГц с включенным делителем на 8, я также настроил CLKPR на /256 и спокойно делаю задержки в коде на ассемблере с помощью одного байта
[05:23:51] <abcminiuser> Yay only 15 emails in my inbox
[05:23:53] <ruslanpopov> но после изменения CLKPR в прошивке, невозможно далее заливать прошивку
[05:24:32] <ecilop> А программатор в курсе, что у тебя частота кварца изменилась?
[05:24:38] <ecilop> тьфу не кварца, ядра
[05:24:58] <ruslanpopov> раньше (лет пять назад) я решал эту проблему через LPT STK200, там можно было занижать частоту работы с программатором, считал так 9.6МГц/256 = 75kHz, работало только с avreal, но сейчас не получается
[05:25:17] <ruslanpopov> не в курсе, я не знаю как avrdude натолкнуть на эту мысль
[05:25:55] <ecilop> Через lpt, ты, наверное, с компа и частоту тактирования брал.
[05:26:11] <ecilop> Попробуй понизить частоту для avrdude
[05:26:14] <specing> Xark: are you drunk enough to be seeing everything in cyrillic?
[05:26:30] <ecilop> specing: :D
[05:26:41] <specing> abcminiuser: lucky you, all I got was spam
[05:27:06] <specing> I would probably understand russian if it weren't in cyrillic
[05:27:11] <Xark> specing: Yeah...the scary thing is I am drinking soda. :)
[05:27:23] <ruslanpopov> specing, lets try
[05:27:30] <specing> but cyrillic -.- ... I mean I should learn it one day, but ...
[05:27:44] <ruslanpopov> ecilop, skaji mne kak eto sdelat' na avrdude, help ne pomogaet :(
[05:28:43] <specing> "tell me how to do that with avrdude, help doesn't help"?
[05:29:00] <ruslanpopov> yes :)
[05:29:29] <ruslanpopov> I just don't understand what value of -Bxx I should use to make it slower
[05:29:47] <specing> If nothing else, go over 9000!
[05:30:01] <ruslanpopov> do you mean -B9000?
[05:30:28] <ecilop> ruslanpopov: I don't use avrdude :( sorry
[05:31:25] <specing> ruslanpopov: usually it works with -B10 or -B100 but yeah
[05:33:18] <ruslanpopov> specing, I have tried 10 and 100, it doesn't help: avrdude: verification error; content mismatch
[05:33:42] <ecilop> ruslanpopov: more, more! Больше бери значения
[05:33:57] <ruslanpopov> да пробовал я играть со значениями, не помогает :(
[05:34:19] <ruslanpopov> неужели методики нет по преодолению проблемы с регистром CLKPR
[05:36:57] <ecilop> ruslanpopov: > 15000 пробовал?
[05:37:43] <specing> ruslanpopov: likely the cable is effed up
[05:37:51] <ecilop> ruslanpopov: -i <delay>
[05:38:36] <ecilop> specing: he writes firmware first by this cable
[05:39:35] <ruslanpopov> specing, this cable works well on fresh MCU (not programmed before)
[05:39:45] <ruslanpopov> the main problem is in CLKPR register
[05:40:05] <ruslanpopov> I have changed its value to /256 at beginning of a firmware
[05:40:19] <ecilop> ruslanpopov: там 2 параметра, которые можешь менять. Я так понял -i и -B
[05:41:22] <ruslanpopov> осталось понять, как вычислять эти параметры
[05:41:51] <ecilop> ruslanpopov: поставь огромное значение для пробы, например 50000 на оба..
[05:51:49] <ruslanpopov> it seems I should build this device: http://radioded.ru/skhema-na-mikrokontrollere/reanimator-mikrokontrollerov-avr-attiny13
[05:52:38] <ecilop> Это параллельный программатор, наверное
[05:52:53] <ecilop> суровый способ, когда уже "край"
[05:52:57] <ruslanpopov> не, это тупой прошивальщик high-voltage
[05:53:09] <ruslanpopov> заливает заводские установки
[05:53:10] <ecilop> high-voltage и есть параллелка
[05:53:56] <ruslanpopov> там всё равно SPI используется, или параллельный из -за подачи двух напряжений?
[05:54:53] <ecilop> Ну я по авркам так помню, что при параллелке на 12вольтах шьёт
[05:55:07] <ecilop> там осторожно нужно
[10:00:06] <anasule> Hi all i have an AVR device and an INF driver and windows is saying it wont install it because the AVR driver (https://github.com/abcminiuser/lufa/blob/master/Demos/Device/ClassDriver/DualVirtualSerial/LUFA%20DualVirtualSerial.inf) is not signed anyone have ant hints (aside from disabling driver signing) on how i can fix this?
[10:01:26] <anasule> Is it possible for me to sign that inf file?
[10:01:27] <specing> anasule: use Linux or BSD
[10:01:51] <anasule> Unfortunatly the implementation is windows :(
[10:02:03] <specing> what implementation?
[10:04:47] <anasule> the avr is driving some machines and theres windows 8 touch pannels (used to be xp) that control the avr
[10:05:07] <anasule> windows xp accepted the driver no problems the windows 8 units are crying about lack of signature
[10:06:42] <anasule> Trying to find info online about how to sign a INF file can only find info for signing exes
[10:08:13] <specing> dude windows 8 touch pannels? seriously what?
[10:08:18] <specing> can't you use android for that?
[10:11:18] <Duality> why can't i find a atmega16 bootloader ?
[10:12:06] <anasule> specing: i dont choose the hardware im just the one whos expected to make it work :(
[10:29:52] <specing> anasule: "I quit is always an option"
[11:50:25] <Guest65696> is there a reason why a completely unchanged programm won't compile after copy paste? i have two solutions with the exact same project (uart). One compiles without problem. The other one not
[11:53:19] <Guest65696> and the three errors follows. although i see no point reading them since on my first solution it compiles with no changes at all
[11:53:25] <Guest65696> Warning 1 #warning "This header file is obsolete. Use <avr/interrupt.h>." [-Wcpp]....... attempt to use poisoned "SIG_UART_RECV" .........'SIG_UART_RECV' appears to be a misspelled signal handler [enabled by default]
[11:53:51] <Guest65696> i will be around if someone cares to take a look
[12:36:24] <Lambda_Aurigae> anasu
[12:36:27] <Lambda_Aurigae> grrr..
[12:36:58] <Lambda_Aurigae> Guest65696, look at what? I don't see any pastbin post or anything.
[12:38:50] <Guest65696> Lambda_Aurigae: like i said the code compiles in an other solution without problem. You don't need it. And i know how to fix these warnings/errors too. i don't need for someone to cerrect it. I was just wantering why i see this behaviour
[12:39:15] <Lambda_Aurigae> without some details, no clue...what was pasted in?
[12:39:26] <Lambda_Aurigae> are you using the same compiler version?
[12:39:46] <Lambda_Aurigae> are both "solutions" being compiled on the same computer?
[12:40:24] <Guest65696> i have a program. I compile it. no problem. i hit new project. i do exactly what i did before and i get errors
[12:40:42] <Guest65696> same computer same compiler same version
[12:40:47] <Lambda_Aurigae> something between the two is different somehow.
[12:41:12] <Guest65696> my thoughts exactly but what?
[12:41:28] <Lambda_Aurigae> no clue without seeing the two sets of files to compare them.
[12:41:51] <Lambda_Aurigae> and if you are using atmel studio, I'm afraid I can't be of any help as it does not run on linux and I have no windows computers in this house anymore.
[12:42:33] <Guest65696> the code is some code for beginners about uart. simple communication. which by the way works perfect
[12:42:58] <Guest65696> i do have studio
[12:43:03] <Guest65696> anyway thanks
[12:43:28] <Lambda_Aurigae> someone else might can help you though...it's just that I refuse to use windows and atmel studio is windows only.
[12:43:52] <Lambda_Aurigae> I suspect something in the project setups between the two projects but no clue what.
[12:44:46] <Guest65696> i doupt that someone will but like i said i know how to fix it. I find it somehow stupid error since i didn't change a thing
[12:45:13] <Lambda_Aurigae> the original project, did you create it or was it one you got online?
[12:45:58] <Tom_itx> studio 6?
[12:46:07] <Tom_itx> if so it will be next week before i can help
[12:46:12] <Tom_itx> takes that long to load here
[12:46:22] <Lambda_Aurigae> Tom_itx, slow internet I take it?
[12:46:26] <Guest65696> i do not know anymore. Three or four years ago i was programming a lot. ever since nothing and i want to start again
[12:46:35] <Tom_itx> 50Mbps
[12:46:47] <Guest65696> studio 6 it is
[12:46:52] <Lambda_Aurigae> or by load do you mean install?
[12:47:02] <Tom_itx> load after clicking the icon
[12:47:17] <Lambda_Aurigae> hehe.
[12:47:18] <Lambda_Aurigae> ok.
[12:48:34] <Tom_itx> completely unnecessary to compile an avr program
[12:48:49] <Lambda_Aurigae> I agree totally.
[12:48:55] <Lambda_Aurigae> bash is just about overkill really.
[12:49:42] <Tom_itx> all it accomplishes is sells HDD, ram and faster pcs
[12:50:44] <Guest65696> what do you mean? if i don t compile it how do i get the hex file?
[12:51:02] <rue_shop3> you link it and stuff
[12:51:18] <rue_shop3> I have the process somewhere, its ugly, you really want to use a makefile
[12:51:22] <rue_shop3> want one?
[12:51:28] <Lambda_Aurigae> use a makefile or execute the 2 commands manually.
[12:51:44] <Guest65696> i don t get it. the uC needs the hex file
[12:52:00] <rue_shop3> no, avrdude needs the hex file
[12:52:04] <Guest65696> it will create the hex with the makefile right?
[12:52:08] <Lambda_Aurigae> and atmel studio is just a gui frontend for a text editor and avr-gcc toolsuite.
[12:52:15] <rue_shop3> the avr needs to have the binary thats in the hex written to it
[12:52:36] <rue_shop3> Guest65696, ....
[12:53:14] <Guest65696> ok and how do i get the binary.
[12:53:18] <Guest65696> ?
[12:53:45] <Guest65696> and how do i upload it?
[12:54:08] <Guest65696> ok don t bother i have other stuff to figure out at the moment
[12:55:09] <rue_shop3> Guest65696, dont go anywhere, I have a doc I'm trying to find for you
[12:55:33] <Guest65696> hey thanks so kind of you
[12:58:10] <rue_shop3> http://ruemohr.org/~ircjunk/tutorials/elex/breadtut/main.html
[12:58:12] <rue_shop3> BINGO!
[12:58:18] <rue_shop3> knew it was in a doc somewhere
[13:01:55] <Guest65696> rue_shop3 : thanks man i will give it a try as soon as i figure out how to make TWI work :@
[13:03:58] <rue_shop3> Guest65696, nono, skip thru it and look at the two commands to build the hex file
[13:07:57] <Guest65696> rue_shop3 i think there is a confusion. The commands are the same for windows? i don t have linux
[13:11:47] <rue_shop3> the commands are prettymuch the same
[13:11:54] <rue_shop3> but you really should use windows
[13:11:55] <rue_shop3> er
[13:11:58] <rue_shop3> n't
[13:14:24] <Guest65696> rue_shop3 hehe i haven t programm for 3-4 years and i cannot figure how to make TWI work and you want me to change Operating system on top of that? Haha no thanks at the moment i am ok with studio even if compiling is an overkill
[13:26:56] <I440r> so im writing a macro assembler for various cpu's, avr is the first one because i already wrote an avr asssembler in forth. it will be a few weeks before i have anything releasable but once i do would anyone like to test?
[13:27:11] <I440r> it will be open sourced as soon as i have it releaseable
[13:28:29] <I440r> i already have a huge chunk of it working but not enough to show off yet lol
[14:01:12] <Lambda_Aurigae> Guest65696, the commands are the same....avr-gcc is cross platform for linux, windows ,mac, and I've even used it on solaris and freebsd. Avrdude as well.
[14:02:11] <Lambda_Aurigae> I440r, ummm...sounds like fun but does the world need another avr assembler? hehe
[14:02:30] <RikusW> Hi I440r long time no see
[14:02:47] <Lambda_Aurigae> Guest65696, the only difference in the commands is the relative path in the avr-gcc command.
[14:03:51] <I440r> because the macro facilities in almost every other assembler is utter suckage.
[14:03:56] <I440r> RikusW, hey lol
[14:03:56] <Guest65696> ok guys thanks a lot
[14:04:03] <Guest65696> i appreciate
[14:04:05] <Guest65696> it
[14:05:33] <I440r> erm bbl, gotta go out to eat :)
[14:05:41] <Lambda_Aurigae> can't say as I've ever used macros in any assembly...
[14:05:50] <Lambda_Aurigae> but, guess that's just me and my self taught thought mode.
[15:19:39] <I440r> Lambda_Aurigae, macros are very useful and pretty much required for what i use assemblers for most of the time, i was coding asm for years before i started using them tho :)
[15:20:14] <Lambda_Aurigae> just never had a need for em. heck, I seldom even use them in C.
[15:20:51] <I440r> you will, some day :)
[15:21:26] <I440r> but if you can get the job done without them then you get the job done
[15:21:32] <Lambda_Aurigae> yup.
[15:21:44] <Lambda_Aurigae> it's just something I never got used to using so don't bother.
[15:22:27] <Lambda_Aurigae> I started with C back in the late 80s and assembly in the early 80s
[15:22:46] <Lambda_Aurigae> so kinda stuck in my ways.
[15:23:02] <I440r> i started with asm in the 80's, didnt touch C at all till the very late 90's
[15:23:26] <I440r> my primary language would probably make you go screamin for mamma lol
[15:24:16] <I440r> cuz thats what most ppl do
[15:25:03] <Lambda_Aurigae> can't be worse than COBOL
[15:25:08] <I440r> forth
[15:25:14] <Lambda_Aurigae> like I said...
[15:25:58] <I440r> http://www.isforth.com/asm51.f <- a buggy (i know how to fix it) 8051 assembler i wrote - i also wrote the compiler i compile it with
[15:26:20] <Lambda_Aurigae> I started a new project today that should be lots of fun....a C programming "platform"
[15:28:12] <Lambda_Aurigae> will start out with one main window within that window/program structure you will be able to create windows and widgits and whatnots on it in a simple C interface...with either the picoC interpreter or compiled C programs.....and will be very pluggable so you will be able to add{Hopefully} any programming or scripting language there is an interpreter or compiler for...
[15:28:59] <Lambda_Aurigae> meant for simple multiplatform GUI development and/or education.
[15:29:13] <I440r> cdool, gui is not anything i know about
[15:30:39] <Lambda_Aurigae> I'm going to use it as a way to learn multiplatform development with wxwidgets.
[15:31:14] <Lambda_Aurigae> then the final product will be able to run the same pico-c code on linux, windows, and mac...and whatever else the main interpreter platform gets ported to.
[15:31:30] <Lambda_Aurigae> won't be fast, won't be powerful, but will be fun to make.
[15:32:17] <Lambda_Aurigae> and I intend to interface serial, parallel, and hid systems so they are all as close to the same on all platforms as I can possibly make them.
[15:32:43] <I440r> why bother with serial/parallel why not just usb?
[15:32:48] <Lambda_Aurigae> making it useful for developing multiplatform microcontroller interface projects and such.....yeah, I have an alterior motive.
[15:33:17] <Lambda_Aurigae> with usb you have virtual serial or hid to make things simple...beyond that you can go with libusb but that gets much more complex.
[15:33:47] <Lambda_Aurigae> and, hopefully, eventually, maybe I can get direct libusb interface as well.
[15:34:17] <Lambda_Aurigae> ok..must go make more sawdust!
[16:01:05] <Xark> I440r: Hello. I agree asm macros are very useful when working with a lot of asm. I used the heck out of them in my last static translation project.
[19:29:11] <brabo> hi. i'm testing out usart on atmega2560, my program sends out a test string: https://paste.xinu.at/KobJ/ using usart.c: https://paste.xinu.at/wfX/ . this works fine, but i'd like to receive over usart with interrupts. when i uncomment the sei(); in the usart.c usart_init function, the delay set in main() does not delay. why can this be?
[19:37:01] <Lambda_Aurigae> brabo, one min..will look.
[19:37:25] <brabo> Lambda_Aurigae: thanks, take your time ;)
[19:42:23] <Lambda_Aurigae> brabo, off the top, no clue...that should not be using interrupts for the delay far as I can see in the avr-libc docs.
[19:42:41] <brabo> uhu.. ye.. i find it weird
[19:42:56] <brabo> if i enable them, the output just keeps on cycling without delay
[19:43:02] <Lambda_Aurigae> are you needing to do something with interrupts?
[19:43:23] <brabo> makes it kindof hard to go the next step, to try and read with a rx interrupt
[19:43:51] <brabo> well, i want to send out regular data packets over uart, but at same time be able to receive commands
[19:44:19] <brabo> that's basically it.. so i thought to solve it with just a rx interrupt to handle the incomming data
[19:45:11] <Lambda_Aurigae> check out the peter fleury uart library.
[19:45:19] <Lambda_Aurigae> http://homepage.hispeed.ch/peterfleury/avr-software.html
[19:46:37] <brabo> i've come across that name before.. i've been looking around at uart and uart interrupt code so much, and it all seems to make the matter so complex, my head is spinning ;)
[19:46:51] <Lambda_Aurigae> read through his...or use it...I do.
[19:47:01] <Lambda_Aurigae> one of the older sites out there and still relevant.
[19:48:52] <brabo> okay
[19:49:22] <brabo> well, it seems i can just try to compile and push his test code..
[19:49:36] <brabo> i have another copy without that
[19:49:37] <Lambda_Aurigae> yup.
[19:49:46] <Lambda_Aurigae> lots of examples in there.
[21:01:51] <anton02> if an SMD component has legs so close together that only a 10mil trace can be used but one of the legs will be receiving up to 1Amp of current, and 10mil isnt enough for that amount, what are you supposed to do?
[21:03:21] <rue_more> usually they gang the high current pins
[21:03:53] <rue_more> if not, look at the datasheet closer, there will be a * pointing out that 10A is what it could take impulse and the continious is limted by the package
[21:04:06] <rue_more> and stop trying to use tiny components for high power applications
[21:04:18] <Lambda_Aurigae> but,,,but,,
[21:04:29] <rue_more> THE * SEE THE *
[21:04:32] <Casper> heatsink the trace, use 2oz copper
[21:04:37] <Lambda_Aurigae> you mean I can't use 1/4 watt resistors in my planet killer death ray anymore?
[21:05:04] <rue_more> not if its in series with the primary reactor output lines, no
[21:05:11] <Lambda_Aurigae> dangit.
[21:05:28] <Lambda_Aurigae> now I have to redo the entire phase coupler design.
[21:05:54] <anton02> oh youre right the input power pins have two next to each other
[21:06:54] <Lambda_Aurigae> ok....I'm off
[21:06:55] <Lambda_Aurigae> to bed
[21:07:01] <brabo> Lambda_Aurigae: thanks
[21:07:05] <brabo> i got it all working
[21:07:07] <brabo> :)
[21:07:26] <rue_more> I suppose the other option is to use 100 oz traces
[21:07:34] <rue_more> :)
[21:08:04] <rue_more> (100oz FR4)
[21:08:55] <anton02> elecrow doesnt seem to have an option to select oz
[21:10:22] <anton02> oh, wait
[21:10:31] <anton02> it's called 'premium PCB service'
[21:11:13] <rue_more> do they have 160oz?
[21:12:31] <anton02> 1oz,2oz,or 3oz for premium service
[21:12:44] <anton02> not sure how the units differ
[21:14:26] <rue_more> its the thickness of the copper on the clad
[21:14:30] <rue_more> you want 160oz
[21:14:39] <rue_more> !traceamps
[21:14:43] <rue_more> gi
[21:15:17] <rue_more> you have 1 thou?
[21:15:22] <rue_more> er 10 thou
[21:15:34] <anton02> sorry?
[21:16:16] <rue_more> yea, 160oz at 10A will give you a trace that needs to be 8thou (mil) min, with a 1c temp rise.
[21:16:45] <anton02> im just not sure what elecrows units are and how they can be converted to oz/ft
[21:16:51] <anton02> http://www.elecrow.com/premium-pcb-service-p-1061.html
[21:16:58] <rue_more> oz are oz
[21:17:08] <rue_more> they have 1, 2, and 3
[21:17:11] <anton02> "Copper thickness up to 3oz"
[21:17:12] <rue_more> you want 160
[21:17:19] <anton02> lol
[21:17:26] <anton02> only 157 oz off
[21:18:41] <anton02> their '3oz' is 105um
[21:19:05] <rue_more> sounds right
[21:20:02] <anton02> i didnt say i need 10amps
[21:20:30] <anton02> does 160oz even exist
[21:22:17] <anton02> Would you use 3oz with 10 layers and a via if you want 10mil traces?
[21:22:23] <anton02> for 10A current
[21:24:59] <rue_more> meh
[21:25:07] <rue_more> almost all my boards are single sided
[21:25:14] <rue_more> CAUSE I'M THAT GOOD!
[21:25:59] <rue_more> ask around, I'm sure you can find someone who does 160oz
[21:29:24] <Valen> 180oz? I have a CnC mill and we can cutt 3mm copper
[21:29:27] <Valen> ;->
[21:48:22] <I440r> xark what assembler did u use? did u see any dificiencies in the macro facility of that assembler?
[21:52:25] <rue_more> Valen, he needs 10 thou traces, have a small bit?
[21:57:23] <Xark> I440r: I am just using GNU assembler. It's macros are fine for my purposes.
[22:02:04] <I440r> and i find the gnu assemblers macro facility to be the single worst one i have ever had to use
[22:02:09] <I440r> lol
[22:02:24] <rue_more> can it nest macros yet?
[22:02:36] <I440r> but im spoiled, i remember the amiga devpac assembler and Eric J Isaacsons A386 for dos
[22:02:54] <I440r> even my c64 assemblers were orders of magnitude better than gnu
[22:03:05] <Xark> I440r: In what sense? I did a fair number of things with it and it worked fine.
[22:03:08] <I440r> rue you can nest macros in gnu as
[22:03:24] <rue_more> I440r, so, what issues do you have with it?
[22:03:52] <rue_more> start at the top
[22:03:53] <rue_more> !
[22:04:17] <I440r> xark i write forth compilers in assembler, i use macros to lay down assembler code identical to what the FORTH compiler itself would lay down. with a real assembler i can HASH the symbol tables at compile time instead of having to run fixup code on the unhashed symbols at run time
[22:04:59] <I440r> it took me about 3 months with A LOT of help to get the macros im using working as good as they are
[22:05:03] <I440r> and that was with expert help
[22:05:32] <I440r> a macro facility sholuld be able to do ANYHTHING you try to do with it, should be intuitive to use and not some cluster fuck gordian knot like gnu
[22:05:37] <rue_more> what kinda things are you doing int eh macros that it has problems with?
[22:05:52] <I440r> but let me tell you how i REALLY feel lol
[22:05:56] <Xark> I440r: OK. That sounds a bit like macro abuse to me, but I can see GNU not being good for pre-computation per character of strings. :)
[22:06:29] <I440r> rue_house, want to see my not yet released ARM Linux Forth compilers macro file?
[22:06:31] <I440r> :)
[22:06:45] <I440r> then maybe i can show you the a386 macros lol
[22:07:46] <I440r> https://gist.github.com/22cd846cac563af06ce1
[22:07:51] <I440r> thers the arm forth macros file
[22:09:01] <I440r> those macros create a linked list of forth word headers (symbol table). all symbols chained to the FIRST bucket in the hash table
[22:09:17] <I440r> with a386 i can chain each header onto the RIGHT hash bucket at assemble time
[22:10:33] <I440r> https://gist.github.com/b8c51d5b3a4676b0215d
[22:10:46] <I440r> thats the a386 macros to do the same thing. (thats for 16 bit dos :)
[22:12:42] <I440r> for my avr forth i just wrote my own avr assembler in forth and used that. problem totally solved from the get go :P
[22:13:04] <I440r> im porting that forth asm to C and will be doing x86 32/64, mips, PIC24 etc etc etc
[22:13:04] <rue_more> not into fourth, but I recall having a time with macros on avrs that (iirc) made me think about going back to pics
[22:13:18] <I440r> pics are HORRIBLE
[22:13:36] <rue_more> I said *think about*
[22:13:39] <I440r> i think the pic architecture is the single worst arch ive ever had to work with - now ive never worked with pic30 tho
[22:13:39] <rue_more> not for long
[22:13:45] <rue_more> yea
[22:14:19] <I440r> every pic24 project ive been on has had HUGE problems. cant use anything above -O0 or your code is broken. constantly fighting breakage in module X because of a small modification in module Y
[22:14:34] <rue_more> the last straw for me was the 16F877 that wasn't compatible with the 16F877A
[22:14:46] <rue_more> buy a commercial programmer? screw all this!
[22:14:58] <I440r> and that whole skid bucket bullshit just blows me away. oh you put a breakpoint here, cool.. just let me complete the other 2 opcodes i have in my prefetch and then ill stop
[22:15:32] <rue_more> wow
[22:15:49] <rue_more> and /4 clock rates
[22:15:53] <rue_more> and paged memory
[22:15:54] <I440r> thats a prolblem with every PIC device
[22:15:54] <rue_more> ugh
[22:16:01] <I440r> maybe not the MIPS based ones
[22:16:13] <I440r> but with microcrap you can never know till u try
[22:16:31] <rue_more> microchip IS good at perphials and power chips
[22:16:38] <rue_more> they have some nice ones
[22:16:45] <I440r> the skid bucket is where you have to put NOPS in front of the opcode you want to stop on so you can put the breakpoint on the first nop
[22:17:01] <I440r> that way you can come to a screeching halt on the opcode you wanted to break at BEFORE executing it
[22:17:15] <rue_more> yup, i get it
[22:17:18] <I440r> you also cannot ever fault their support for paying customers
[22:17:47] <rue_more> ... you have to pay for a programmer and you have to pay for a C compiler....
[22:17:56] <I440r> but with the complete and utter suckate of the processors they push they NEED to give it that level of support or they would go belly up
[22:18:10] <I440r> and their c compiler is gcc
[22:18:21] <rue_more> it wasn't
[22:18:22] <I440r> with closed source modifications
[22:18:25] <I440r> it is now
[22:18:39] <I440r> their ENTIRE tool chain is gnu based
[22:18:40] <rue_more> microchip used to have a prop. one
[22:18:53] <I440r> yes they still have it but it is only for certain legacy devices
[22:19:01] <I440r> i forget what that toolchain was called
[22:19:02] <rue_more> atmel got C support up way before microchip
[22:19:03] <I440r> they BOUGHT it
[22:19:21] <I440r> microchip tried to buy atmel
[22:19:30] <I440r> that would have been a sad day
[22:19:35] <rue_more> glad that din't work
[22:20:06] <I440r> well atmel is hurting somewhat
[22:37:30] <rue_shop3> even with arduino?
[22:38:09] <rue_shop3> its spooky, if microchip had released DIY programmer info and a free C compiler, arduinos would prolly be PIC based
[22:41:05] <I440r> now THERES a scary thought :P
[22:42:43] <I440r> anyway, ik have to go provile my assemblers symbol hasing. im going to push 30 million symbols into the table, ensure no collisions and benchmark doing a search on each one
[22:42:48] <I440r> or something along those lines
[22:42:59] <I440r> ill be able to do it because this machine has 64 gigs of ram lol
[22:43:20] <I440r> proFile blargh i need to l2 type
[22:45:23] <rue_shop3> hmm