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 2024-07-05

00:00:22_bilgusyeah thats getting a bit too far for what I figure we need
00:01:15braewoods_yea, this contains all the basic CORE of Tcl... Most of the newer stuff is extensions.
00:02:24braewoods_Like string comparisons become a very verbose affair.
00:02:49braewoods_strcmp(a, b) becomes like [string compare $a $b]
00:03:26_bilgusI did like that they implemented integers as a datatype
00:03:50braewoods_Because older Lua has no native integers?
00:04:13braewoods_The latest Lua finally added integers though.
00:04:33_bilgusno because parsing strings to make ints is slow
00:04:49braewoods_I see.
00:05:07braewoods_So there's fewer conversions you're saying?
00:06:09_bilgusyeah constantly back and forth
00:06:29_bilguswhat I hope is that you could get bytecode compile in ram
00:07:50braewoods_Only so much you can do for script modules though. If people really want performance, they need to write it in C like the rest of us do.
00:17:32_bilgusthinking more like first run stuff gets compiled then it just uses bytecode files
00:18:11_bilgusI played with similar stuff with lua but the parser isn't the big bottleneck
00:19:03_bilgusnow I did get a helloworld lua program down to 13k but the actual watermark in ram ends up being around 3x that
00:20:17_bilgusany scripting language is going to have weird memory usage but its truly staggering the alloc/free cycle that happens just to get the first line to run
00:20:31_bilgus(in lua)
00:22:00_bilgusnot to mention a 130k bin
00:23:21_bilgusI think this partcl is probably more like 1k and 20k respectively looking at it
00:24:27_bilgusI was looking at micropython for the familiarity/power but it has a lot of baggage I'd have to remove still
00:24:58_bilgusand its still a new language
00:26:22braewoods_The other thing I can think of is one of the many Lisp things floating around. They tend to be implemented in a similar manner internally: linked lists.
00:26:40braewoods_But asking people to use that...
00:26:45*braewoods_ winces.
00:26:54_bilgusyeah but the lisp is so damn .. terse
00:27:11_bilguslike the opposite issue of tcl lol
00:27:44braewoods_Indeed. NewLisp kinda falls into our use case but its main maintainer is missing.
00:27:48_bilgusI went down the lisp rote for a bit just because the ease of getting it up but it quickly felt like brainfuck
00:28:22_bilguswhich I also made a plugin interpreter for
00:28:33_bilgusalong with a optimizer
00:34:36_bilgusre newlisp they kinda gloss over the ram requirement still looking
00:41:52braewoods_At least some information about implementation.
00:42:26_bilgusyeah I read that
00:43:15_bilguswhat I want really is that sum of squares program does it take 10mb to parse and 12kb of ram stack cells or what
00:44:07_bilgusbut their search on the forum is the same as ours (it sucks)
00:56:08braewoods_No idea honestly.
01:03:07_bilgusIt really doesn't have that many commands, I guess given primitives you can make your own
01:04:54_bilgusfull unicode support is a nice feature
01:08:26_bilgusI think the pcre engine alone might be bigger than tcl
01:12:42 Quit massiveH (Read error: Connection reset by peer)
01:19:16 Join massiveH [0] (
01:34:57***Saving seen data "./dancer.seen"
02:09:08 Quit massiveH (Quit: Leaving)
03:34:08kirvesAxeI wonder why playlists saved by rb on my Eros Q get the "file od folder does not exist" error on Ubuntu...
03:34:51kirvesAxels shows them but still claims they do not exist
03:35:00***Saving seen data "./dancer.seen"
03:35:45kirvesAxeWindows reads them just fine, and is saved over there, ubuntu has no issues... I wonder if this is an exFAT related issue or something.
04:49:51sporksome character set issue ?
05:35:01***No seen item changed, no save performed.
07:35:05***No seen item changed, no save performed.
08:47:59 Join speachy [0] (~speachy@rockbox/developer/speachy)
08:47:59Mode"#rockbox +v speachy" by ChanServ (
08:49:17speachy_bilgus: I've had the mispleasure of using tcl during my stints working with EDA tools (Cadence suite, Xilinx stuff, etc). tcl is incredibly popular in those niches but.. I honestly think lua is more widely used.
08:49:45speachyif you were trying to go for something with more general failarity, micropython is probably the way go go
08:49:53speachyand I say that as someone who positively loathes python
08:50:26speachyI've seen uPython deployed directly onto not-high-end microcontrollers so RAM usage has to be manageable.
08:50:52speachy(pretty sure we'd not be able to use the vast majority of the python code out there)
08:51:51speachyit's most likely purely interpreted though.
08:55:32speachykirvesAxe: First thing that comes to mind is capitalization/case mismatch.
09:35:08***No seen item changed, no save performed.
09:47:47speachyhuh. somoene on reddit claims to have done a build for the ipod6g that handles >2TB drives.
09:48:28speachyI di da quick sanity check of what they posted to github and the storage api still used 'unsigned long' for sector count so... I don't see how that could work.
09:48:52speachy(32-bit sectors * 512bytes = 2TB max
09:50:18speachyfixing this properly has been on my todo list, but ultimately it requires bumping the internal apis to use 64-bit sector/offsets.
09:51:13speachydisappointed this perosn didn't reach out to us at all though.
09:52:17speachydidn't post the "stupidly simple" patch, just a source tree.
09:54:05speachyuh.. his "proof" is two 512GB partitions on GPT? wtf?
09:56:45speachyok, in the end his only change was to enable MULTIVOLUME on the ipod6g.
09:57:12speachysomeone with a reddit account needs to smack that post with a cluebat.
10:14:56_bilgusan I assume multiple partitions?
10:15:43_bilgusI was looking at upython hard actually
10:15:56speachybasically they haven't actually _tested_ it with a >2TB drive
10:16:17speachyhonestly I don't know if the iFlash SD adapters will even _work_ with that size
10:16:33speachy(the SATA adapters should have no issues though)
10:17:08_bilgusI'm not sure why you really need >2TB for anything less than 6 months
10:17:14speachyit's funny because in a later post on that thread they acknowledge the 2TB limit applies to the entire drive.
10:17:30speachyfundamental misunderstanding of how the multi-SD card adapters work
10:18:31_bilgusI'm going to this Alaskan observation post
10:18:55_bilgusfor the next 2 years I need 4Tb of music
10:19:49_bilguswtf apple wanted a leg for 10gb
10:21:59_bilgusI was wondering on TCL with anyone who used it a lot if they have strong feelings against it
10:23:31speachygoing to 64-bit sector offsets within the storage subsystem is the first step; then the individual storage subsystem and their device drivers (ata, sd, etc) need to be made aware, then the filesystem code.
10:23:33_bilguseh maybe this will get them interested in learning and get us another dev later on
10:23:57speachyand _then_ it's worth talking about exFAT. :D
10:24:23speachyIMO what's really driving these large storage sizes is high bitrate FLACs
10:24:41speachythat inevitably end up being played back via bluetooth anyway. :D
10:25:39speachy(oh, the poster of that build has their home IP banned in the forums, it turns out..)
10:25:53speachy(current home IP, I should say...)
10:26:06_bilgusI just haven't heard a real difference I have mp3 low rate flac and high rate flac and I try to guess which one it is when I hear a familar song and nearly always wrong
10:26:17_bilgusthink its random chance when I got right
10:26:53speachywe now handle high bitrate but not higher-bitdepth stuff. and the analog paths on all of this gear isn't up to snuff anyway.
10:29:31speachy1TB of 128kbps audio files will last just shy of 2 years of nonstop playback.
10:32:49speachyor... 2.5 months if it's CD quality FLAC.
10:33:34_bilguswhich is still fine for a personal player IMO
10:33:55_bilgusbet it takes a while to load the music
10:37:32 Join bakedbacon420 [0] (~bakedbaco@2600:381:cb60:232d:8c04:5c71:8a43:8711)
10:39:00bakedbacon420Who would i need to get in contact with to have a weird forum ban issue looked at? Ive never had an account or interacted in any meaningful way, but when i go to the forums, it says im a permanently banned guest. I can see forum pages from vpn or even switching to a private window in opera/chrome
10:41:18speachywhat's your current public IP address?
10:41:23bakedbacon420one moment
10:42:26bakedbacon420Weirdly its showing me pinging from alabama but im in NC
10:42:41buZzgeoIP isnt accurate
10:42:47bakedbacon420oh kk
10:42:52speachybtw, your change does nothing with respect to the 2TB limit. the iflash multi-card SD adapters don't present as multiple individual drives; instead it appends them together as a sort of RAID0 single drive to the OS.
10:43:49speachy(I also have yet to hear anything about how well the iflash adapters even _work_ if there's more than 2TB of cards plugged into it)
10:44:11bakedbacon420How does that relate to multi_volume and partitioning? not being trying to argue im still very much a novice it just seems to work on the surface lol
10:44:54speachythat 99.186 address is not in the ban list FWIW
10:45:16speachybut given that it works from a private session, try clearing * cookies from your browser?
10:45:27bakedbacon420Thank you ill give that a try now :)
10:45:39speachy(another possibility is some sort of plugin that's mucking with things)
10:45:56speachy(those are often/usually disasbled when using private browsing modes)
10:46:03bakedbacon420That worked a treat thank you!
10:47:36bakedbacon420But on the iflash adapters, their website just says they run in "JBOD" mode i wasnt under the impression it was any specific raid configuration with any limitations
10:47:40_bilgusah good
10:47:54bakedbacon420i have a drive connector to connect my iflash to my pc once more sd cards arrive and i can see whats going on with it
10:48:05bakedbacon420Im committed at this point so im digging my heels in hard
10:50:15speachyinternal to rockbox all of the sector offsets are represented by 32-bit numbers
10:50:29bakedbacon420i see
10:50:37speachyso 4 billionish * 512 byte sectors == 2TB max
10:51:06bakedbacon420Theoretically if i could get it to read larger sectors?
10:51:21speachyto break past that the internals (and APIs) would all have to be converted to 64-bit offsets, and every device driver has to accept that and do the right thing.
10:52:02speachywith larger sectors, yes. We handle 2K sectors properly due to how some of the 5th gen ipods were set up
10:52:29speachybut that still required the _hardware_ to work natively with 2K sectors.
10:52:49bakedbacon420thats a lot to chew on
10:52:55speachyand those iflash adapters only do 0.5K.
10:53:03speachy(along with most devices)
10:53:26bakedbacon420Okay so now it really is a hardware and partitioning problem
10:53:29bakedbacon420thats more my speed
10:54:14speachya hack would be to partition/etc the device with 2K sectors and have the ata driver interally map that back to 512B sectors but that's inordinately messy.
10:54:27speachymuch better to just make it 64-bit clean everywhere
10:54:50speachybeen on the to-do list for a while, but there's just not been a pressing need for that capability in an audio player
10:55:10speachyaddd GPT support a while back as the first step towards that goal
10:56:34bakedbacon420Since you recognized my username im not sure if youve seen the kind of stuff ive posted to reddit (and deleted admittedly for personal life reasons) but im very much into cursed messy hacks lol
11:02:25_bilgusI was just lloking at the file copy code it just knows 512 for sector size we do have a macro for SECTOR_SIZE but I bet there are more hardcoded places to bite you
11:03:17_bilgusbakedbacon420, we all started on this codebase with a goal and a hack I think
11:05:14 Quit rogeliodh (Quit: The Lounge -
11:05:36 Join rogeliodh [0] (
11:08:31bakedbacon420I appreciate the words of wisdom a great deal :)
11:08:46bakedbacon420ive found myself weirdly passionate about this project over the years im eternally grateful for what you guys do
11:08:54bakedbacon420and i just wanted to have a piece of that for myself lol
11:17:07speachyit's a labor of love for all ofus
11:17:16speachylove and/or insanity
11:18:17speachyone complication in in making the storage APIs 64-bit clean is the desire to not slow/bloat things at runtime for devices that'll never handle storage that large.
11:19:19speachyso step 0 would be defining a new type (sector_t or whatever) that's initally an 'unsigned long' and converting everyhting to use that.
11:19:50speachythen we can try making that into a uint64_t and start fixing everything that breaks. :D
11:19:58 Join othello7 [0] (
11:27:44_bilgusand 2038 need similar work I suspect
11:32:44speachyFAT doesn't have that problem ironically
11:33:22speachywe have such little stuff internally that cares asbout dates that I think it won't be that bad to resolve.
11:34:35 Join _bilgus_ [0] (
11:35:10***Saving seen data "./dancer.seen"
11:35:23_bilgus_I haven't been able to get on IRC from the kiwi web frontend the last few times
11:36:13_bilgus_I had issues directly at libras web one too but it eventually went, maybe just server load
11:38:13speachynothing we can do about it one way or another
11:38:48 Quit _bilgus (Ping timeout: 268 seconds)
11:44:20_bilgus_maybe someone is doing blockchain crap on IRC ervers again
11:46:34 Quit bakedbacon420 (Read error: Connection reset by peer)
12:20:12 Join othello8 [0] (
12:30:11 Join lebellium [0] (
12:32:12 Quit othello8 (Quit: othello8)
12:44:52kirvesAxespork, unless rockbox just pretends to use ascii range utf-8 characters but uses something else, charset issues are out of the question :)
12:46:38kirvesAxespeachy, when the error comes from ls listing files, telling their names but also telling that they don't exist, I wonder where the case micmatch could have happened... did rockbox save the fimename with wrong case somehow? :)
12:47:09speachydo a fsck/chkdsk run?
12:57:57kirvesAxeMaybe I'll try that... but I still assume the problem is somewhere with how the hosted rockbox port uses the exFAT sd card, or maybe with the linux support for exFAT having issues
12:59:05kirvesAxe(I mean the playlist files Rockbox saved work on the device itself without any issues, and if the sd card is read by a Windows machine, it finds the files... but Ubuntu complains)
13:00:13kirvesAxe(sometimes I remember opening playlist files on a windowsbased text editor, saving over original, and then they work on the device and ubuntu... but feels a bit painful to always need a faildows for this stuff :P)
13:35:11***Saving seen data "./dancer.seen"
13:47:46 Join bakedbacon420 [0] (~bakedbaco@2600:381:cb60:232d:71eb:92c:1443:3f51)
13:55:44 Quit bakedbacon420 (Remote host closed the connection)
14:25:15speachyah, ok. the exfat code in those hosted ports is probably on the order of a decade out of date, and likely riddled with long-since-fixed bugs.
14:54:47 Join bakedbacon420 [0] (~bakedbaco@2600:381:cb60:232d:71eb:92c:1443:3f51)
14:57:18bakedbacon420Right now my iflash is reporting 4096 bytes per sector and 16 sectors per cluster(as are the partitions on the drive), and rockbox is booting fine and reading/writing no issue
14:57:21bakedbacon420what am i missing here lol
14:57:33bakedbacon420Wouldnt that put me at a higher limit than 2tb?
14:57:41bakedbacon420Or am i doing the math all wrong
15:00:25bakedbacon420no yeah i think im doing the math wrong having relooked at the formula lol
15:02:47 Quit jj5 (Ping timeout: 252 seconds)
15:30:54 Join jj5 [0] (
15:35:13***Saving seen data "./dancer.seen"
15:36:52 Join davisr [0] (~davisr@fsf/emeritus/davisr)
16:40:45speachythis has proven to be less difficult that I'd anticiapted
16:41:10 Quit cstine (Quit: The Lounge -
16:41:54 Join cstine [0] (~cstine@
16:41:56speachyall I have left to do is convert the FAT code over and all ATA targets will handle >2TB drives.
16:42:25speachySDUC is more involved, as that will require core changes _and_ every SD driver to be touched.
17:06:24bakedbacon420holy shit really? i was literally about to full send it with a really silly partition hack and 4 sd cards
17:06:49bakedbacon420grabbed the sd cards from my 3ds and steam deck and backed them up lol
17:09:58speachythe FAT code is _really_ tricky
17:12:24bakedbacon420If you need someone to test your code once its done lmk i have 3tb of sd cards ready to slap in my ipod
17:12:45bakedbacon420let me know* sorry still getting used to IRC etiquette
17:12:47speachywell, one thing you can do is slap them all in there and see what shows up in disk mode
17:13:05speachy(ie how large of a virtual drive shows up)
17:13:15bakedbacon420most i can do right now is 2.5tb raw sd card storage will that work?
17:13:20bakedbacon4203ds sd card is still backing up
17:13:29speachyanything over 2TB bsically
17:13:39bakedbacon420bet gimmie 10 minutes or so
17:16:42 Join Moriar [0] (
17:18:16_bilgus_ g#5807 is a WIP of a user request on the forums
17:18:18rb-bluebotGerrit review #5807 at : [Feature] playlist_viewer id3 title display by William Wilgus
17:19:07_bilgus_ATM its just pulling id3 data from the file name which I guess isn't terrible in chunks but eh I think I'd like that to be the fallback
17:19:44_bilgus_pretty sure I can query the db in that whole exchange (assuming not too much more code)
17:20:34_bilgus_I should say opening each file on every scroll essentially
17:27:00speachyI want to extend the cmdline dbtool to extract all of the strings the tagcache cares about, and export that to a file which can then be used to generate talk clips
17:27:54speachythe goal being fully voiced database browsing.
17:29:38speachyok, I think I have the FAT code converted. or at least it now compiles without warnings on an ipod 5g. :D
17:29:58_bilgus_ah so they cn generate clips off their db?
17:30:29speachyan alternative is to have that exported from within rockbox
17:30:58_bilgus_wouldn't be too bad to spit it out in a playlist with some annotations
17:31:00speachypotentially a lot of clips and strings.
17:31:26speachyalso roll the strings in tagnavi.cfg into that list
17:31:42_bilgus_probably be best to package them up in a voice blob tbh
17:32:02_bilgus_make it like its a plugin
17:32:03speachygotta get the data out of the database first.
17:32:42speachy(still leaning on extending dbtool)
17:32:49_bilgus_the tcd files are pretty easy to parse but nicer to have rb export it
17:35:15***Saving seen data "./dancer.seen"
17:43:54bakedbacon420im still here im just having issues getting it to restore so i can have disk mode back lol
17:53:36 Quit davisr (Remote host closed the connection)
18:10:26 Quit bakedbacon420 (Read error: Connection reset by peer)
18:14:05 Quit lebellium (Quit: Leaving)
18:21:40 Join bakedbacon420 [0] (~bakedbaco@2600:381:cb60:232d:9cfe:f329:3818:d96a)
18:58:10 Join massiveH [0] (
19:07:01speachyUgh, the SD stuff is a mess. every target driver efectively reimplements the world.
19:16:41speachyok, g#5088 for folks feeling particularly brave. All I can promise is that it compiles clealy. probably.
19:16:45rb-bluebotGerrit review #5088 at : playlist: Remove current flag by Aidan MacDonald
19:18:33speachyuh.. g#5808
19:18:36rb-bluebotGerrit review #5808 at : storage: 64-bit sector offsets, phase 1 by Solomon Peachy
19:29:44bakedbacon420I only just got github running literally the other day to get my repo up
19:29:58bakedbacon420how do i go about adding this new patch to my current build/redownload for recompile?
19:33:55bakedbacon420wait i found the page nevermind
19:35:17***Saving seen data "./dancer.seen"
19:41:20 Quit jj5 (Ping timeout: 268 seconds)
19:45:51 Join jj5 [0] (
20:21:32speachyto meaningfully test this out, you'll need to pretty much fill the whole thing up with data that can be validated
20:22:24speachyrockbox's usb mass storage mode should do the right thing
20:25:53speachyI wonder if Apple's disk mode will handle >2TB drives..
20:51:01bakedbacon420most that shows up in virtual disk right now is 304ish gigs
20:51:42bakedbacon420cant seem to get it to show me any additional unallocated space and disk checks pass on it fine so i have no clue where the other 2tb is going lol
20:52:04bakedbacon420gonna see if i can get it into rockbox and see what the debug menu says
20:57:48speachydon' tthink the debug menu shows the total drive size, just the partition info
20:58:52bakedbacon420ah fair enough
20:58:58bakedbacon420i get a panic when usb disconnected anyways lol
21:00:33speachydisk size in the debug menu is incomplete, d'oh
21:35:19***Saving seen data "./dancer.seen"
21:42:17speachyanyone have the ata identify info from an ipod 5g 80GB? (ie the one with the 2K sector size?)
21:51:21 Quit Moriar (Quit: Leaving.)
21:56:14bakedbacon420any quick and dirty way to get that info?
21:56:20bakedbacon420ive got a 5g 80gb chilling in my drawer
21:56:53speachydebug menu -> dump identify info, then grab identify_info.bin off the disk
22:00:29bakedbacon420ill have it shortly
22:03:57bakedbacon420aight ive got the .bin is there anywhere handy for uploading random files? lol
22:14:14bakedbacon420The iflash is overflowing as soon as it hits 2tb it seems
22:14:49bakedbacon4202x1tb cards is fine no issue. Comes out to ~1.86tb. Add a 512gb card and the total drive space becomes 304gb even
22:20:26 Quit bakedbacon420 (Ping timeout: 268 seconds)
22:21:17 Join bakedbacon420 [0] (~bakedbaco@2600:381:cb60:232d:54f8:9ce5:9849:7352)
22:21:38bakedbacon420ended up bluescreening from trying to access the disk so some really funky stuff is going on behind the scenes lol
22:22:15bakedbacon420im gonna have to get another zif drive reader see if it acts this way when access directly as opposed to through the ipod itself
22:22:29massiveHbakedbacon420, can I interest you in a copy of WinZIP 1.0
22:23:34bakedbacon420Hope it deserved it
22:55:39 Quit bluebrother (Ping timeout: 272 seconds)
22:56:23 Quit rb-bluebot (Ping timeout: 264 seconds)
22:57:15 Join bluebrother [0] (~dom@user/bluebrother)
23:03:19 Quit bakedbacon420 (Remote host closed the connection)
23:09:53 Join rb-bluebot [0] (~rb-bluebo@rockbox/bot/utility)
23:35:22***Saving seen data "./dancer.seen"
23:38:55 Join Moriar [0] (
23:45:20 Join bakedbacon42066 [0] (~bakedbaco@2600:381:cb60:232d:54f8:9ce5:9849:7352)

Previous day | Next day