Faits: Faits: A. Par jugement du 5 janvier 2004, le Tribunal de police du canton de Genève a condamné A._ à 20 jours d'emprisonnement avec sursis durant trois ans, pour violation d'une obligation d'entretien, sur plainte du Service genevois d'avance et de recouvrement des pensions alimentaires (Scarpa) couvrant la période de mai 2000 à avril 2002. Débiteur de 1300 fr. de pension par mois, l'accusé n'avait payé que 280 fr. par mois jusqu'en août 2001, alors que les indemnités journalières qu'il percevait de la SUVA (3500 fr. par mois) lui auraient permis de verser davantage. Tel n'était pas le cas pour la période suivante, l'accusé ne touchant plus qu'une rente de 765 fr. par mois. A. Par jugement du 5 janvier 2004, le Tribunal de police du canton de Genève a condamné A._ à 20 jours d'emprisonnement avec sursis durant trois ans, pour violation d'une obligation d'entretien, sur plainte du Service genevois d'avance et de recouvrement des pensions alimentaires (Scarpa) couvrant la période de mai 2000 à avril 2002. Débiteur de 1300 fr. de pension par mois, l'accusé n'avait payé que 280 fr. par mois jusqu'en août 2001, alors que les indemnités journalières qu'il percevait de la SUVA (3500 fr. par mois) lui auraient permis de verser davantage. Tel n'était pas le cas pour la période suivante, l'accusé ne touchant plus qu'une rente de 765 fr. par mois. B. Par arrêt du 22 mars 2004, la Chambre pénale de la Cour de justice genevoise a rejeté l'appel formé par A._. Les revenus de l'appelant lui permettaient d'assumer ses obligations alimentaires plus largement qu'il ne l'avait fait. Dès octobre 2001, ses moyens s'étaient réduits, de sorte que le défaut de paiement n'était plus fautif; le délai de plainte commençait à courir dès cet instant, pour autant toutefois que le plaignant en soit informé. Or, il n'était pas établi que le Scarpa ait été informé de la situation financière de l'appelant de sorte que sa plainte, déposée le 3 mai 2002, n'était pas tardive. B. Par arrêt du 22 mars 2004, la Chambre pénale de la Cour de justice genevoise a rejeté l'appel formé par A._. Les revenus de l'appelant lui permettaient d'assumer ses obligations alimentaires plus largement qu'il ne l'avait fait. Dès octobre 2001, ses moyens s'étaient réduits, de sorte que le défaut de paiement n'était plus fautif; le délai de plainte commençait à courir dès cet instant, pour autant toutefois que le plaignant en soit informé. Or, il n'était pas établi que le Scarpa ait été informé de la situation financière de l'appelant de sorte que sa plainte, déposée le 3 mai 2002, n'était pas tardive. C. A._ forme un recours de droit public, avec demande d'effet suspensif et d'assistance judiciaire. Il requiert l'annulation de l'arrêt cantonal. La Cour de justice se réfère aux considérants de son arrêt. Le Procureur général conclut au rejet du recours et de la demande d'effet suspensif. Le Scarpa s'en rapporte à justice. Par ordonnance présidentielle du 26 mai 2004, l'effet suspensif a été accordé.