Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

#rockbox log for 2020-09-20

00:09:23 Quit JanC (Remote host closed the connection)
00:09:45 Join JanC [0] (~janc@lugwv/member/JanC)
00:16:29 Quit massiveH (Quit: Leaving)
00:22:55braewoods_bilgus_: memory exhaustion?
00:23:06braewoodsthen again i don't know the rockbox allocation model
00:24:54braewoodsi assume though it has the 3 basic allocation methods
00:25:07braewoodsstatic fixed size ones
00:25:14braewoodsthe stack
00:25:16braewoodsthe heap
00:43:24_bilgus_no it handled 64 k alloc fine mine is like 3k
00:43:49_bilgus_I figured alignment but no dice
00:47:12_bilgus_duh buflib requires a buffer to handle
00:48:05_bilgus_core is already init'd so you need to create a core alloc a little bigger than the buf you require
00:48:59***Saving seen data "./dancer.seen"
01:02:43_bilgus_its alive, about damn time
02:45:50 Join johnb5 [0] (
02:49:03***No seen item changed, no save performed.
02:59:18 Quit johnb5 (Ping timeout: 256 seconds)
04:01:47 Join ZincAlloy [0] (
04:09:39 Join johnb5 [0] (
04:10:08 Join lebellium [0] (
04:25:23 Quit prof_wolfff_ (Ping timeout: 260 seconds)
04:30:06 Join petur [0] (~petur@rockbox/developer/petur)
04:48:27 Join pamaury [0] (~pamaury@rockbox/developer/pamaury)
04:49:05***Saving seen data "./dancer.seen"
04:56:18 Quit johnb5 (Ping timeout: 260 seconds)
06:13:46braewoods_bilgus_: how hard is it to develop for rockbox if you've never done embedded work before? (since rockbox is an embedded thing for most of its ports)
06:14:23 Quit St3ak (Quit: Free ZNC ~ Powered by LunarBNC:
06:14:32braewoodsI'm used to writing code for targets that use ASLR or otherwise use system assigned memory locations...
06:14:48braewoodsi've never had to use hard-coded pointer addresses
06:14:48 Join St3ak [0] (
06:15:00braewoodsi know it's a thing but i never needed to
06:15:34braewoodsi guess virtual memory is what i'm used to working with and i'm assuming rockbox uses physical addresses
06:16:04braewoodsbut i would be surprised if rockbox doesn't have some kind of libc to ease integration of third party libraries
06:16:24 Join ac_laptop [0] (~ac_laptop@
06:17:11braewoodsoh, i take that back. i have used NULL which is technically a hard-coded pointer address.
06:17:18braewoodsbut for everything else, not at all.
06:49:07***Saving seen data "./dancer.seen"
07:49:47 Join prof_wolfff [0] (
08:44:04speachybraewoods: it's like bowling without gutter rails.
08:49:11***No seen item changed, no save performed.
09:22:32speachyHmm. I think we should pull pcm_play_data() from the plugin API, and make everything go through the mixer.
09:43:07 Join johnb2 [0] (
09:44:13johnb2speachy : I also did the screen replacement.
09:44:24speachyjohnb2: night and day, eh?
09:45:22johnb2Yers. I opened the back. For re-assembly I used adhesive tape to keep volume and lock keys in place, then it was easy.
09:46:31johnb2I did two stupid things though: 1. using glue below the screen looks ugly and I caused a glue stain on the outside of the screen. too.
09:48:47johnb22. I used some black cloth to create a "mask"for the screen. That doesn't look too bad, but the hole is not wide enough (misses a few pixels to the left and right). I had never turned on the screen, before I assembled everything. Stupid me :-(
09:49:22johnb2Right now I am not inclined to rip the screen off again...
09:50:02johnb2Shall I add a few notes on the screen exchange to the wiki?
09:50:18johnb2like the caveat for the buttons.
09:51:43_bilgus_speachy I like removing the pcm_play
09:52:15speachydo you ahve access to calipers to measure the exact dimensions of the old screen?
09:53:50johnb2not right now, would need to find somebody to borrow me one.
09:55:16_bilgus_braewoods I actually much prefer working on this side but embedded typically doesn't use bloated libraries so you get a bit more intimate with your hardware and implementations than you like at times
09:55:17speachydoom, metronome, pacbox, pdbox, rockboy, sdk, test_sampr, xworld, and zxbox
09:55:18johnb2Do you still have the old screen? Mine is intact.
09:55:42johnb2Was useful for cutting the replacement.
09:55:53speachyyeah, I have mine, and calipers. I'll measure it and put it on the wiki
09:56:08speachythe thickness is probably the most important dimension to record
09:56:26speachyDS screen replacements are a bit too thin
09:57:24_bilgus_but really rather than asking for subjective opinions start messing with some code find a place jump in, start on plugins if you like they are slightly more 'managed' as far as the programming goes
09:57:40johnb2If you put cloth underneath it's not that bad. Actually, my sceen is slightly bulging out, as the fit is very tight.
09:57:52_bilgus_plus it'll get you familar with whats already in the core
09:58:50speachybraewoods: if you want a nice self-contained task to get your feet wet, how about converting the plugins that use the direct pcm api to using the mixer instead?
10:00:56_bilgus_oh and I used to search for stuff using github but beware it is a flaky regexless terrible interface much better to search locally then use github to see the history etc.
10:01:16speachygit grep is awesome. :)
10:06:31 Quit rogeliodh (Quit: The Lounge -
10:06:41_bilgus_ bool (*pcm_is_playing)(void); bool (*pcm_is_paused)(void); will probably need to be implemented as a mixer function I don't see the corresponding func and it might touch some lua stuff too bet I can help you there its my baby atm
10:07:22 Join rogeliodh [0] (
10:07:33speachyI don't see a reason to remove the entire public pcm_* api, just pcm_play()
10:08:27speachyso there's only one API for audio playback
10:09:46 Quit johnb2 (Quit: Nettalk6 -
10:12:19_bilgus_oh I figured we could dump the whole thing they both have a play data function
10:12:50_bilgus_you'd have the recording stuff left though
10:17:25speachywell, we could rename the other pcm_* stuff to mixer_*
10:17:49speachyrecording is an entirely separate beast, and more importantly there's only one recording path
10:18:32speachyin the core, the only user of pcm_play_data() is the mixer code. :)
10:18:55_bilgus_only play_lock\play_unlock and pcm_is_playing look to be missing a mixer version
10:19:52speachypcm_play_*lock is a lowlevel hw API though
10:20:21speachyand almost nothing outside the core uses it.
10:21:32_bilgus_so leaves is_playing that probably is littered everywhere
10:27:56speachy...not a lot of users for is_playing. hmm. mp3_is_playing vs pcm_is_playing
10:28:56speachyused only by imageviewer. and it should really be called voice_is_playing()
10:30:02speachyokay, that user is wrong.
10:44:11speachy g#2752
10:49:14***Saving seen data "./dancer.seen"
10:52:42fs-bluebot_Build Server message: New build round started. Revision 5d40d97, 280 builds, 7 clients.
11:21:10fs-bluebot_Build Server message: Build round completed after 1707 seconds.
11:21:11fs-bluebot_Build Server message: Revision 5d40d97 result: 0 errors 9421 warnings
11:22:26speachyoh ffs. what I built wasn't committed.
11:23:38 Quit ac_laptop (Ping timeout: 260 seconds)
11:24:31 Join johnb5 [0] (
11:25:16fs-bluebot_Build Server message: New build round started. Revision c528c01, 280 builds, 7 clients.
11:34:28speachycore's doing the triplebuf thing properly now. phew. back to the jz code.
11:40:34 Quit johnb5 (Ping timeout: 256 seconds)
11:41:13fs-bluebot_Build Server message: Build round completed after 956 seconds.
11:41:15fs-bluebot_Build Server message: Revision c528c01 result: All green
11:50:00 Join johnb5 [0] (
12:49:15***Saving seen data "./dancer.seen"
12:52:48 Join ac_laptop [0] (~ac_laptop@
13:00:21speachy$#@%^#@$^ −− the hardware doesn't support sending irqs after each descriptor, just when the complete transfer has occurred
13:01:15speachyand for cyclic descriptor chains.. it never "finishes".
13:04:08*__builtin never understood the difference between pcm_ and mixer_
13:05:02__builtinI assume that mixer_ uses pcm_ and allows superimposing multiple voices?
13:05:12speachyessentially, yes.
13:05:57speachymost notably voice and things like fake keyclicks
13:06:07__builtinoh, right
13:06:27__builtinso using pcm_ prevents those from working
13:06:44speachyyeah. I think it also bypasses the dsp core too
13:08:11__builtinthe overhead with mixer should be minimal, right?
13:08:24speachywhen you only have one stream, yeah.
13:08:36speachythe core playback stuff all goes throught he mixer
13:08:52__builtinsomething like the sdl plugins will probably never need voice or keyclick
13:08:55speachyonly a handful of plugins directly hit the pcm_ stuff
13:09:10__builtinbut if it leads to a cleaner API I'm all for it
13:53:34 Quit johnb5 (Ping timeout: 260 seconds)
13:55:43_bilgus_ g#2754
13:56:23_bilgus_bluebutt> Add Invalid Voice Announcement to the voice system FS #13216
13:56:24fs-bluebot_ Add a failsafe voice prompt for "voice file failed to load" (feature requests, new)
13:56:55_bilgus_g# 2754
13:57:39_bilgus_anyways that took so much long than I expected
13:58:27_bilgus_main issue was the fact you need buflib overhead and I just didn't have enough room left for the clip after
13:58:35_bilgus_amongst other annoying things
13:59:05 Join johnb5 [0] (
13:59:22_bilgus_ah crap forgot to add the voice file to the commit
14:17:23 Quit johnb5 (Ping timeout: 240 seconds)
14:19:14 Quit pamaury (Ping timeout: 260 seconds)
14:33:41speachy_bilgus_: so it looks like my multi-buffer audio fantasies are not to be
14:34:59speachythe jz DMA engine doesn't support interrupt-on-descriptor-complete, just completion of the entire chain.
14:35:10speachywhich for circular chains, never happens.
14:35:31speachywhich is just brain-numbingly WTF.
14:39:24_bilgus_no i'd say typical AFAICS
14:39:43 Join pamaury [0] (~pamaury@rockbox/developer/pamaury)
14:40:01speachywell, only in the sense that every dma engine is broken in some way
14:40:34speachythere's a per-descriptor INT flag but it only triggers if LINK is 0 when the descriptor is completed.
14:40:52speachythey went 95% of the way there
14:41:02speachy(LINK is the chain flag)
14:41:19_bilgus_no low watermark then?
14:42:56_bilgus_could you overlap the samples and just swap or does that make it too slow?
14:43:50speachythe problem is knowing when we need to do that. by the time we get the interrupt it might already be too late.
14:45:02speachynow we could play games with a HW timer triggering an interrupt instead but the bookkeeping for that would get... interesting.
14:45:43_bilgus_it might be worth doing that like a multimedia timer
14:48:33speachyI think bang-for-the-buck we're better off rewriting the irq servicing stuff to reduce its latency.
14:48:54speachyand/or some sort of preemption.
14:49:12_bilgus_eh I was thinking the same but I wasn't sure where you were on that
14:49:19***Saving seen data "./dancer.seen"
14:52:51speachya few false starts. HAsn't been easy to find out what's actually needed. There aren't too many folks well-versed in MIPS32r1
14:54:08speachythe way Linux does it is to push most of the ISRs into their own thread(s) and just schedule them as part of the regular OS stuff.
14:54:45speachyI don't think our scheduler lets us trigger a task switch coming out of an interrupt.
14:58:26_bilgus_JhMikeS would probably be the most up to date on that but I haven't seen him in at least a year
15:05:25speachyif I can force a task change in the interrupt handler then that approach should work.
15:12:13 Join advcomp2019 [0] (
15:12:13 Quit advcomp2019 (Changing host)
15:12:13 Join advcomp2019 [0] (~advcomp20@unaffiliated/advcomp2019)
15:15:14 Quit advcomp2019_ (Ping timeout: 260 seconds)
15:21:51 Join jerwin [0] (~flippy-fl@unaffiliated/flippy)
15:21:59jerwini have finally rejoined the rockbox club
15:22:06jerwinbought an ipod classic 6g
15:22:07jerwinthis is great
15:24:10Lonoxmonti like it on my 5.5g video
15:32:30jerwinyeah, it's much better than the sansa players i used to use
16:00:03 Join johnb5 [0] (
16:12:34 Quit johnb5 (Quit: Nettalk6 -
16:13:06fs-bluebot_Build Server message: New build round started. Revision 2ffe879, 280 builds, 7 clients.
16:42:14fs-bluebot_Build Server message: Build round completed after 1748 seconds.
16:42:15fs-bluebot_Build Server message: Revision 2ffe879 result: 135 errors 27 warnings
16:42:51_bilgus_hold_button i bet
16:43:40_bilgus_I realized it when I stareted wondering what was taking so long
16:46:28fs-bluebot_Build Server message: New build round started. Revision 1f9e16e, 280 builds, 7 clients.
16:49:23***Saving seen data "./dancer.seen"
16:55:35_bilgus_as for that 1.2 k mips stack I almost want to make it dynamic
16:58:36speachythe irq stack you mean? We can shrink it down to maybe 0.75K now
16:59:11speachythe highest high watermark I've seen is about half that.
17:00:37_bilgus_in talk.c the thread has 0x500 added
17:00:50_bilgus_for 'stack hungry mips'
17:00:52speachyoh that, yeah
17:01:12_bilgus_since its static non voice users pay for that
17:01:45speachytrade the code complexity to save 1K on targets taht have at least 32K?
17:02:03_bilgus_but meh probably plenty of ram on here so why bother
17:02:24_bilgus_thats why I said almost lol
17:02:44jerwindo you guys know if they discontinued the agptek rocker? can't find them anywhere now
17:02:48speachyI'm definitely in favor of simpler (and possibly more RAM-hungry) code.
17:03:22_bilgus_jerwin no clue but I imagine supply line disruptions have a hand
17:03:31jerwinah, forgot we have a pandemic
17:03:40speachy$74 on ebay.
17:04:00_bilgus_thats not even eye wateringly price gougy yet
17:04:17speachybut the stocks are definitely depleted
17:04:46_bilgus_speachy did you take that clipzip out of the package yet?
17:04:53speachy$54 on amazon prime
17:04:54fs-bluebot_Build Server message: Build round completed after 1105 seconds.
17:04:55fs-bluebot_Build Server message: Revision 1f9e16e result: All green
17:05:18 Quit lebellium (Quit: Leaving)
17:05:19speachy_bilgus_: nope
17:05:28_bilgus_bound to raise the prices if you can't get new ones
17:06:20_bilgus_well new other ones I should say
17:06:22jerwinoh, i didn't see that 74 dollar listing. a week or two ago there were no listings for it at all on ebay
17:06:54speachycan still get X3s on ebay for $81. (3 left)
17:07:11_bilgus_you might try FB marketplace I saw a bunch on there
17:07:22jerwini'm not looking for one right now, i was just curious
17:07:26_bilgus_ie. rockboxable targets
17:07:47jerwinthe best value rockbox player i've found is the ipod classic 5th gen which goes for like $50 on ebay
17:07:56jerwinsince the rocker is getting harder to find
17:08:19_bilgus_well with speachys awesome work on the iflash issues yes
17:08:20speachy50, and budget for an iflash adapter, sd card, and a new battery :)
17:08:48speachyspeaking of iflash issues I have a bunch of dumps to look at
17:09:36_bilgus_oh is it ongoing I thought it was 100% damn we need two speachys and a pamaury here
17:10:38speachyI suspect the more recent dumps I have are due to partition wonkiness
17:11:18_bilgus_That would not surprise me TBH there is a funky program out there on linux
17:11:35_bilgus_at least thats what I surmise
17:12:01speachyall of the wonkiness that I've seen are from windows users
17:12:27_bilgus_they can't do it natively can they?
17:12:48_bilgus_I guess once its inserted into the device they could
17:14:06_bilgus_I think for windows I told them to use 3rd party LOWLEVELFORMAT i'll have to look in the forums
17:16:26speachyoh, that's lovely.
17:16:48speachy2K sectors on the problematic one.
17:18:40speachy2K sectors and 16K clusters
17:19:12_bilgus_huh maybe dos commands gone awry
17:20:59speachyIIRC one model of ipods used 2K sectors (80GB 5.5?). Caused a lot of interop issues
17:23:27speachyok, I think this is why; the partition type reported is '0' for the firmware and data partitions.
17:24:47speachy500GB data partition
17:25:06speachywhich we skip because we skip type 1.
17:28:24speachypartition is set up for 512 byte sectors, but the partition itself uses 2K sectors.
17:35:37speachypartition table is 2K sectors, FAT is 2K sectors.
17:45:45 Join cockroach [0] (~blattodea@pdpc/supporter/active/cockroach)
17:55:53braewoodsspeachy: weird. i thought only optical discs used 2k sectors
17:56:18braewoodsi tend to see 4k more often userd
17:56:23braewoodse.g., page size
17:57:04speachythey did that because of the 5.5th gen's large disk sizes
17:57:26speachybasically did it to save RAM on their bursting-at-the-seams PP platform..
17:57:54braewoodshow does larger sectors reduce RAM usage?
17:58:18braewoodsi guess it means potentially smaller tables to index
17:58:39braewoodsbut not everything is cached to RAM
17:59:09speachyprobably had some fixed buffer space allocated for FS metadata.
17:59:40speachytheir disk mode firmware faked out 2K sectors
17:59:51speachyto the host OS
18:00:04Lonoxmontyeah my 5.5 80gb has the funky sectors too
18:00:42speachyyou're still on the original spinning rust?
18:01:12*braewoods spins the rusty cylinder.
18:01:15speachycan you dump the partition table and first two sectors of the data partition for me so I can try and see if anything obvious is amiss?
18:01:19Lonoxmontno, i have iflash quad adapter
18:01:37Lonoxmontstill have the original drive somewhere
18:01:55speachynah, doesn't matter what the drive is, as long as rockbox is happy to boot up with it
18:02:24Lonoxmontrockbox boots fine, the problem i was having was files getting corrupted when transferred under rockbox in usb mode
18:02:42Lonoxmontworked aorund by booting to native firmware disk mode to do file transfers
18:02:48speachyI'm trying to figure out this issue:,53533.15.html
18:05:03speachyhas an iflash sata adapter. lord only knows what's going on under the hood; that one's presumably using different guts from the SD adapters.
18:06:45Lonoxmontyeah i can get you the dumps from mine, though since tis the sd adapter idk how useful it will be
18:06:48Lonoxmontlemme look for my cable
18:07:08speachyI can at least compare the partitioning to see if it's done the same way
18:08:35speachyI don't know if it's a bug relating to 2K sectors, some ATA feature [not] being twiddled, or maybe even a combination of the two.
18:09:00speachyheh, debugging this proprerly might require a this adapter, the SSD, and a IDE->ZIF cable. :)
18:11:19Lonoxmonthow do you want the ipod booted, disk mode? rockbox? original firmware?
18:24:56speachydisk mode I guess
18:30:40 Quit ZincAlloy (Quit: Leaving.)
18:49:27***Saving seen data "./dancer.seen"
19:03:13 Quit pamaury (Ping timeout: 246 seconds)
19:31:38 Quit petur (Quit: Leaving)
19:53:41 Join bluebrother [0] (~dom@rockbox/developer/bluebrother)
19:55:15 Join fs-bluebot [0] (
19:57:06 Quit bluebrother^ (Ping timeout: 272 seconds)
19:57:23 Quit fs-bluebot_ (Ping timeout: 240 seconds)
20:06:35 Quit Moarc (Read error: Connection reset by peer)
20:06:59 Join Moarc [0] (
20:31:03 Join josh24cor [0] (8ea27b49@
20:31:35josh24corhey guys i need some help bringing a file from my windows 10 computer over to my ubuntu so i can mess with it
20:31:56josh24corlast command i had was to take my compiled zip and transfer it to my desktop using
20:32:03josh24corcp /mnt/c/Documents\ and\ Settings/JoshuaDesktop
20:32:30josh24corbut now i wanna take C:\Users\JoshuaDesktop\Desktop\rockbox-master to my ~ directory in ubuntu
20:32:44josh24corrockbox-master folder that is
20:37:35Strife89Are these separate machines?
20:39:42josh24coryes but nevermind i think il just download the official build and mod it that way, all good!
20:44:08 Quit josh24cor (Remote host closed the connection)
20:49:30***Saving seen data "./dancer.seen"
21:15:46speachyouch; iflash's (4-yr-old) benchmarks show the mSata being worse for battery life than the original hard drive
21:33:38_bilgus_just picked up a fuzev2 on fb marketplace $40
21:44:10 Quit cockroach (Quit: leaving)
22:22:21 Quit beencubed (Quit: Leaving)
22:40:38 Join captainkewl [0] (
22:49:33***Saving seen data "./dancer.seen"
22:57:11 Part captainkewl
23:02:11_bilgus_this thing is nice few scratches on the back front is like new
23:46:22 Quit ac_laptop (Ping timeout: 272 seconds)
23:52:02 Quit TheSeven (Ping timeout: 260 seconds)
23:52:34 Join TheSeven [0] (~quassel@rockbox/developer/TheSeven)

Previous day | Next day