Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
170 user(s) are online (114 user(s) are browsing Forums)

Members: 1
Guests: 169

geennaam, more...

Headlines

Forum Index


Board index » All Posts (Hypex)




Re: audio.device questions
Just popping in
Just popping in


@kas1e

Quote:
In my case, audio.device used properly with CMD_WRITE, and while I do hear all the sounds, it crashes for me on exit. So i just tried to understand why so..


I wonder if it's because of ADCMD_LOCK? Maybe not. Do you have any equivalent C code that can replicate the crash?

Quote:
Have a clue how to rewrite this code from audios.device to ahi.device usage ?


Sure. It's similar in a way as it uses a duplicated IORequest for each channel but can use Unit to specify channel. So unit 2 would map to channel 1 which should be right. Unless you had an Amiga which was opposite to the other side of the world.

To do it for channels an IORequest needs duplicating for each extra channel after opening AHI. Then the period needs converting to frequency. After that it's setting volume and matching pan.

Set the clock:
if (GfxBase->DisplayFlags PAL)     clock=3546895L;        /* PAL clock */
else     clock=3579545L;        /* NTSC clock */


AHIio->ahir_Std.io_Command CMD_WRITE;
AHIio->ahir_Std.io_Length  BUFFERSIZE;  
AHIio->ahir_Std.io_Data    buffer;   
AHIio->ahir_Type           AHIST_M8S;   
AHIio->ahir_Frequency      clock/period;
AHIio->ahir_Std.io_Offset  0;    
AHIio->ahir_Volume          0x10000;          // Full volume
AHIio->ahir_Position        0x0;           // Right
AHIio->ahir_Link            NULL;

IExec->SendIO((struct IORequest *) AHIio);


Quote:
Just do not want to rewrite everything in this… Especially i have hard times to rewrite this part of code to AHI:


It maps unit to channel. Except for when mapping all channels that I don't get. Seems total channels, such as 4, is code for playing on all channels.

Wiki has more info. Except doesn't say how to play a sound. Only has a CMD_READ recording example. Doesn't fully explain how to play sound. Leaves it to example to fill in gaps. Also the closing code is strange. It uses AbortIO() without checking then does a WaitPort() and GetMsg(). Looks kludgy. Then example code uses normal WaitIO().

https://wiki.amigaos.net/wiki/AHI_Device

Go to top


Re: Get/Set Kernel DebugLevel (and KDEBUG command question)
Just popping in
Just popping in


From what I recall KDebug was an internal command written for OS4 debugging. So not exactly intended for public. Which explains why it's possibly not working as well as expected.

Go to top


Re: audio.device questions
Just popping in
Just popping in


@kas1e

It depends on the use of the audio.device. Most programs, especially module players and games, simply open audio.device to allocate the audio in a friendly manner but then bang the hardware. This was common practise.

This also caused confusion when an OS4 audio.device appeared in the early days. People used audio.device apps but didn't hear a sound. This is because the OS4 audio.device provided the API but didn't emulate Paula. People assumed the existence of the audio.device meant audio software would work. No, the audio.device and Amiga audio are two different things.

There are two variants of audio.device. The Classic version and the AmigaOne version. The Classic version be a straight up OS4 port of the original. The AmigaOne version is a shim that is a wrapper for ahi.device. It works fine for playing audio since it just redirects CMD_WRITE calls to AHI. So can't be fixed in that regard, since it already works, as it's the programs that aren't using it to play audio.

The AmigaOne version also has a bug I found out this year. The ADCMD_LOCK is faulty. It just replies back straight away. This could affect software as it is a bug that violates known API. Though it shouldn't affect playback. Given they ported audio.device to AHI I don't understand how they messed this up. The code was right there, what did they do with it?

So, aside from the hard patching method you employed in the past, the only way at present for this to work is to use NallePUH.

https://www.os4coding.net/forum/can-ad ... -command-work-audiodevice

Go to top


Re: What's the best/latest EUAE build for OS4?
Just popping in
Just popping in


@LiveForIt

Quote:
Did i understand right, in the window mode we also use compositing now ?


That's cool. Is it only window mode? Next to adapt resize to full screen.

Also, I found out UAE isn't the only one with folder HDD problems. I've had this issue on FS-UAE where searching a folder HDD crashes. Turns out it might be related to international characters. Don't know about ours.

https://eab.abime.net/showthread.php?t=112817

Go to top


Re: What's the best/latest EUAE build for OS4?
Just popping in
Just popping in


@kas1e

Quote:
Tested, and that's not all that bad. For Delay(300); it open 60 times timer.device, and 60 times close then. Mean for "5ms" it 1 open/close act.
But exactly the same happens for AmiDock and XDock while them running. They throw all the time open/close of timer.device, but also not thousand times, but not 2-3 times either.


When I checked it out a few times there was a hive of activity with timer.device. It was hard to tell why it was being opened so much given a process should only need to open it once. Since I was just monitoring activity it just looked a bit too much for existing processes.

Quote:
I remember some years ago, some of us found that some function like a madman open/close thousand times timer.device, but it then were fixed.
Anyway, yeah, better to not close/open things lot of times without needs.


LOL. It was more of an issue in the slower 68K days, given each time a port and request would need allocating if not already, and the OS device list searched by name one by one. But I still think any OS functions using timer.device should keep resources open and store in the process structure for repeated use.

Go to top


Re: What's the best/latest EUAE build for OS4?
Just popping in
Just popping in


@kas1e

Quote:

Yeah, i even don't have this TimeDelay() on me anymore. See there:


It should be built in somehow. They merged a few amiga.lib functions in. Well the tool type ones were as I use them but I forget how I linked them in.

If the AmigaOS target wasn't there it would look for nanosleep, usleep then finally SDL. Maybe using SDL would be good if it still uses it?

Quote:
And yep, i go the DOS's Delay way and this is probabaly the same open/close timerdevice. Maybe nanosleep() way will be better ?


Could be better using nanosleep() depending what it does. Because of the nature of AmigaOS; allocate, use, free, it needs to setup a simple timer beforehand. Might be best to add custom OS timer code that does this.

As to Delay(). Load up Snoopy. Activate device opens and look at all the timer.device entries airing AmigaOS dirty laundry.

Go to top


Re: What's the best/latest EUAE build for OS4?
Just popping in
Just popping in


@kas1e

Quote:
By some reassons i do have undefs to TimeDelay() when linking, so i have to comment this part out, so instead dos's Delay will be used.


Oh no. That will cause load on CPU and open up then close timer.device every time it's used. AmigaDOS isn't efficient that way.

Then again TimeDelay() is an amiga.lib function that does the same thing. Opening up and closing timer.device.

These are things that need cleaning up. There should be an Alarm() function in years. And should be a timer delay function that allocates resources only once and reuses them on each call.

Go to top


Re: What's the best/latest EUAE build for OS4?
Just popping in
Just popping in


@LiveForIt

Quote:
UAE open and closes library’s when switching between window mode and Fullscreen mode, maybe what you’re talking about.


No, that's not it. It's when opening the screen and simply screen switching. It's likely using 800x600 while my WB is at 1920x1080. So when it changes screen the monitor blanks out. Even if the resolution is the same I've found a different depth will also set it off.

Simple test. Open a program with a different screen mode. Switch back to WB then switch back again. Your monitor should blank between mode changes. All mine do.

Quote:
Well as long as your not compositing a larger screen onto smaller screen, now that look truly horrible.


Thought that would work better. I mean, when going from big to small, you don't see the "Doom chunky wall" effect. When going from small to big, which is what UAE would mostly need, you risk getting the pixelated chunky effect.
Quote:


UAE Amigfx, does is not use native modes, it just uses native api to set up window mode, and full screen modes, and modes are emulated in the window, or in the full screen mode.


Native modes are crap. I mean, all the P96 PAL modes were 640x480. That's not low res! So, this is an old problem.

Quote:


I don’t have a NDA with hyperon, so can’t make this changes anyway speaking of (NallePUH and DPaint4), of cause you can try better fake mode hack..


Shouldn't need NDA or any mode hacks. Just CompositeTagList() which should be in OS4 SDK.

Quote:
Yes but now everyone is using HDMI, DVI, so signal should be digital, so don’t see why, and we don’t have any native planar modes, (unless your on a old BlizzardPPC or CyberstromPPC.)


That's more reason why it should be stable. But it's likely because a different resolution is using different timings. So it blanks out to change. Perhaps would help if all timings matched. But don't know if all resolutions can be set to same timings and it won't automatically.

So it's not because of missing native modes. Just different screen modes. If you don't see this I don't know why. I've seen it with all my monitors and different screen modes. I thought everyone had it.

Go to top


Re: Saving an output with Snoopy
Just popping in
Just popping in


I've only used the default RAM save location lately. Does that also fail? Could be a bug. It can save. Any spaces in your path?

Go to top


Re: RX Video Card for X1000
Just popping in
Just popping in


It should technically work. But, RX cards aren't officially supported on the CFE firmware, or more specifically cards with UEFI firmware. So you will need to do the CFE hack for it to work.

It involves changing a jumper and setting up screen mode drivers. In the process you lose access to CFE because the screen will be blank. If you need CFE access you will need a serial cable.


There is a thread about it below.
https://www.amigans.net/modules/newbb/ ... &order=ASC&status=&mode=0

Go to top


Re: What's the best/latest EUAE build for OS4?
Just popping in
Just popping in


@LiveForIt

I mostly use RuninUAE as it's installed and ready to go. But WB3.1 is pretty basic. I had UAE installed but found it was on my XE HDD that I pulled out.

I also found another annoyance. Screen mode switching. I think it's time screen modes were emulated. I'm kind of over the screen switching last 20 years almost. CRT, LCD, whatever, they are all the same. It takes about 2 seconds for them to sync. Given we have compositing there should be no need for using the real screen mode and for years video cards have been 640x480 minimum so it's pointless as 320x200 or 320x256 won't work on modern hardware. So for me compositing the screen and scaling it to the actual resolution would be better.

The reason this wasn't a problem on real Amigas was because all PAL or NTSC resolutions were a variant of the same screen mode. So the screen didn't flinch. Wish I could screen between different resolution like we could years ago without it blanking out.

Go to top


Re: The RAD (And logging serial output techniques)
Just popping in
Just popping in


@rjd324

You can use C:DumpDebugBuffer for that. It survives a soft reboot. Or it should as it did on the XE but on some kernels like X1000 they messed it up and broke it.

For redirecting to serial you can use KDebug as so:
KDebug console serial


By default it should be set to memory. In case of hard crash you will need serial debug. There should be no need for tools Sashimi as the functionality is built in.

Go to top


Re: The RAD
Just popping in
Just popping in


The RAD is so cool man.

I can see what the issue is. The Ctrl-Alt-Alt is doing a hard reset and the RAD disk won't survive. I suppose they could have programmed it to scan memory if possible but they didn't.

It's supported only in soft reset. So you need the Ctrl-Amiga-Amiga combo or depending on keyboard Ctrl-Logo-Logo. And in the menu you found.

It's a recent problem that the Radeon driver and especially V5 cannot support soft reboot because the cards don't like it. Some cards do support it, like my R7 250, but it only works in V1-V3 driver. Soft reboot doesn't work when using the V5 driver. Which Polaris card do you have?

I don't know why but the driver resets the card when Amiga OS reboots. I think at this point they will need to stop this process. The screen needs blanking so I wonder if it can be simply blanked out and kept active while it reboots.

Go to top


Re: What's the best/latest EUAE build for OS4?
Just popping in
Just popping in


@LiveForIt

Quote:
I I'm thinking about doing something about EUAE for where long time, most likely keep thinking about it, maybe after messing with utf8.library I have look at it.


Yeah I've noticed a few issues over the years. The most major is you can't trust it to write directly to HDD volume as it crashes doing so. Next that P96 is missing. Wanted to use the JIT version but found it's fast with no RTG support. Because P96 needs SDL. Given P96 should give direct RTG support I thought it was strange it didn't use AmigaOS or P96 directly. But when I looked the UAE builds apparently needed SDL for RTG. Next I would say key mapping is all wrong as RunInUAE ignores shift key.


Edited by Hypex on 2022/12/6 11:14:18
Go to top


Re: A1-XE halts during boot after loading kickstart files
Just popping in
Just popping in


@Reynolds

You are right about SLB. It's installed as part of partitioning the drive for OS4. Is the drive supposed to have OS4 installed? Because here it looks blank. There is no bootblock found on it.

I agree with sailor about serial debug. Unfortunately these machines aren't very user friendly at times and require you to act like a hardware engineer if the hardware develops a fault. If there is an issue like unsupported video card it won't give you an error.

One thing to check is the date in UBoot with date command. It may need resetting. You can also use the help command to give info on other commands while in UBoot.

I think all the talk about IDE settings is confusing the issue. Which may have been set correctly in the beginning. You can use the UBoot menu and avoid the command line. Typing "menu" to bring it up is what I like to do. You may need to quickly press return as it likes to attempt booting. You can then check out the settings including IDE and change them in a more easier way. Why this isn't suggested more I don't know.

Also checking the IDE cables is a good idea. Despite transfer mode UDMA cables should be used with IDE socket and device in proper place. And in this case master only set. UBoot reads the devices fine so that should be good. If you see it hunting and printing dots on screen looking for IDE devices then it is suspect.

Is the RAM installed known to be working before? If it has been changed it needs to be compatible. Unfortunately locating the correct ram may be rare these days. Technically these are server boards in design so need server ram. It should be ECC and registered if you can find it. They can take up to the full 2GB in 2x 1GB sticks. But that is a rare working example.

You can also test this I released years ago. BootMemTester. In case it detects some ram issues. Can write to a DVDRW or USB stick as examples. But USB needs formatting as Amiga first.

http://os4depot.net/?function=showfil ... ardware/bootmemtester.lha

You can also use the Linux net installer I compiled for a quick memory test as well. Why I suggest this is that the Linux kernel is good at detecting memory faults. You can write this directly to CD/DVD or USB. If you have a spare USB key around you can erase for testing then easiest may be using any program to write the image directly to USB key. Insert in a working USB port, reboot to Uboot if needed, then type:
usb scansetenv boot1 usbboota


https://sourceforge.net/projects/amiga ... x/files/debian-installer/

Go to top


Re: Command "Dir" 54.5 (c) 2022 AmigaKit, command not working from AUX:
Just popping in
Just popping in


@LiveForIt

Good idea. Played with AUX shell in the 68k days.

Yes my solution is to also use the standard version. The AmigaKit version is unofficial anyway. They might as well have used AROS as source since it's not the real original Dir.

It's awkward as I don't think it can keep a white list but I tick off all the extra commands when updating with Updater.

Go to top


Re: A1-XE halts during boot after loading kickstart files
Just popping in
Just popping in


@Reynolds

Okay. Good start. The ram may have gone stale. My XE stopped booting years ago. It turned out to the ram had gone stale somehow and must have had a micro grime build up. I confirmed it on serial debug as I saw trouble with ram when it stopped and it also had VGA issues and that needs ram. I literally pulled the ram out and put it back in. Then it worked!

Go to top


Re: x1000 documentation and other x1000 related questions
Just popping in
Just popping in


@geennaam

Quote:
In my limited experience with the amiga platform, it's the amiga side that is the issue. There is a notorious lack of information of how things are done.


I'm sure you know os4coding.net is proof of that. It used to be in the autodoc books and RKMs. Then ADCD. The wiki has some of those but perhaps not all. I think examples are lacking in all areas. Recently I wanted to program an OS3 ExtSprite. Read the API functions and was still blank as to how I simply set a sprite image, turn it, off and change images. These are fundamental steps but I didn't see it mentioned!

Quote:
It starts with a simple explaination of how to write an aos4 device in the first place. All explaining and example code assumes a certain level of amiga coding knowledge which amiga coding noobs like me don't have.


That's a reasonable assumption. Did you volunteer or did they ask you? If you aren't familiar with Amiga coding let alone device drivers which are rather low level code why would they ask you?

This is the problem with the Amiga scene. A friend offered his help in beta testing code as he has experience with beta testing in the real world and they said no. No wonder OS4 is going down the crapper.

Quote:
Then there's the lack of information of which commands needs to be implemented for a certain type of device.


For network there would be the extra SANA commands as well as base device commands.

Quote:
So I have to create a dummy driver first to probe which commands are called by applications and other components before I can get started. (Inventing the wheel)


There should already have been reference sources given with existing network drivers.

Quote:
Then I will not only face all of the problems described above. But in addition also face the issues that I do not own a X1000 and don't have access the required documentation for the PAsemi processor (probably NDA material which is only available the Hyperion, a-eon and kernel developers). So this will be a no-go.


Did you own an X1000 before you started?

Quote:
In my opinion, this is not the responsibility of third party driver developers but instead should be part of the SDK documentation.


Absolutely.

Go to top


Re: A1-XE halts during boot after loading kickstart files
Just popping in
Just popping in


When was the last time it had a new battery?

Go to top


Re: x1000 documentation and other x1000 related questions
Just popping in
Just popping in


@ddni

Quote:
The listed shortcomings of the X1000 have NOT limited my enjoyment of the machine since 2012. Even jumping to RX gfx card and losing CFE menu has not proven to be that bad....


I couldn't do that hack. I read all sorts of issues initially and I'm not interested in more issues than I already have with my R7 250. Aside from that I couldn't use CFE blind as I need to see my boot menu. Needing to count cursor moves would be like the time I needed to put my phone into recovery mode by pressing the right keys in sequence. When my screen was broken and a false move would wipe it.

Go to top



TopTop
« 1 ... 5 6 7 (8) 9 10 11 12 »




Powered by XOOPS 2.0 © 2001-2023 The XOOPS Project